View.setTag()与View.getTag()的功用

View.setTag()与View.getTag()的作用

View中的setTag(Onbect)表示给View添加一个格外的数据,以后可以用getTag()将这个数据取出来。

例如:可以给多个Button添加一个监听器,每个Button都设置不同的setTag,这个监听器可以通过getTag来分辨是哪个Button 被按下。

	public class MyListener implements View.OnClickListener {   
		  
		@Override   
		public void onClick(View v) {
			int tag = (Integer) v.getTag();   
			switch (tag) {
			case 1:   
				System.out.println("button1 click");   
				break;   
			case 2:   
				System.out.println("button2 click");   
				break;   
			case 3:   
				System.out.println("button3 click");   
				break;   
			case 4:   
				System.out.println("button4 click");   
				break;
				}
			}
		} 

 

 

还可以按照tag来找到view

例如:异步加载图片时,图片下载完成后,可以按照图片的URL找到要更新view

ImageView imageView = (ImageView)linear.findViewWithTag(imageUrl);