android view setTag()和findViewWithTag()

我们可能在有得需求情况下要给view设置一个tag,然后根据这个tag获取这个对应的view对象,给一个view设置一个tag为setTag(),根据这个tag获取这个view对象使用findViewWithTag()方法,写了一个简单的demo玩玩,

 

[html] view plain copy
 
 print?在CODE上查看代码片派生到我的代码片
  1. package com.example.tags;  
  2. import java.util.ArrayList;  
  3. import java.util.List;  
  4.   
  5. import android.app.Activity;  
  6. import android.os.Bundle;  
  7. import android.view.View;  
  8. import android.view.View.OnClickListener;  
  9. import android.widget.TextView;  
  10. public class MainActivity extends Activity implements OnClickListener {  
  11.     private TextView tv1,tv2,tv3,tv4;  
  12.     @Override  
  13.     protected void onCreate(Bundle savedInstanceState) {  
  14.         super.onCreate(savedInstanceState);  
  15.         setContentView(R.layout.activity_main);  
  16.         tv1 = (TextView) findViewById(R.id.tv1);  
  17.         tv2 = (TextView) findViewById(R.id.tv2);  
  18.         tv3 = (TextView) findViewById(R.id.tv3);  
  19.         tv4 = (TextView) findViewById(R.id.tv4);  
  20.           
  21.         tv1.setTag("tag1");  
  22.         tv2.setTag("tag2");  
  23.         tv3.setTag("tag3");  
  24.         tv4.setTag("tag4");  
  25.           
  26.         tv1.setOnClickListener(this);  
  27.         tv2.setOnClickListener(this);  
  28.         tv3.setOnClickListener(this);  
  29.         tv4.setOnClickListener(this);  
  30.     }  
  31.     @Override  
  32.     public void onClick(View v) {  
  33.         switch (v.getId()) {  
  34.         case R.id.tv1:  
  35.             ((TextView)tv1.findViewWithTag("tag1")).setText("变化后的tag1");  
  36.             break;  
  37.         case R.id.tv2:  
  38.             ((TextView)tv2.findViewWithTag("tag2")).setText("变化后的tag2");      
  39.             break;  
  40.         case R.id.tv3:  
  41.             ((TextView)tv3.findViewWithTag("tag3")).setText("变化后的tag3");  
  42.             break;  
  43.         case R.id.tv4:  
  44.             ((TextView)tv4.findViewWithTag("tag4")).setText("变化后的tag4");  
  45.             break;  
  46.         }  
  47.     }  
  48. }  

就是一个布局中四个textview而已,没啥讲的!

 

 
 
posted @ 2016-10-18 15:46  天涯海角路  阅读(439)  评论(0)    收藏  举报