android view setTag()和findViewWithTag()
16lz
2021-01-26
我们可能在有得需求情况下要给view设置一个tag,然后根据这个tag获取这个对应的view对象,给一个view设置一个tag为setTag(),根据这个tag获取这个view对象使用findViewWithTag()方法,写了一个简单的demo玩玩,
package com.example.tags;import java.util.ArrayList;import java.util.List;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.TextView;public class MainActivity extends Activity implements OnClickListener {private TextView tv1,tv2,tv3,tv4; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tv1 = (TextView) findViewById(R.id.tv1); tv2 = (TextView) findViewById(R.id.tv2); tv3 = (TextView) findViewById(R.id.tv3); tv4 = (TextView) findViewById(R.id.tv4); tv1.setTag("tag1"); tv2.setTag("tag2"); tv3.setTag("tag3"); tv4.setTag("tag4"); tv1.setOnClickListener(this); tv2.setOnClickListener(this); tv3.setOnClickListener(this); tv4.setOnClickListener(this); }@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.tv1:((TextView)tv1.findViewWithTag("tag1")).setText("变化后的tag1");break;case R.id.tv2:((TextView)tv2.findViewWithTag("tag2")).setText("变化后的tag2");break;case R.id.tv3:((TextView)tv3.findViewWithTag("tag3")).setText("变化后的tag3");break;case R.id.tv4:((TextView)tv4.findViewWithTag("tag4")).setText("变化后的tag4");break;}}}
就是一个布局中四个textview而已,没啥讲的!
更多相关文章
- Android基础之通过 Intent 传递类对象
- Android菜鸟日记20 - ListView
- android wifi讲解 wifi列表显示
- Android(安卓)webview数据获取 webview抓取
- 客户端笔记——Android(安卓)序列化
- Android(安卓)DataBinding
- Android(安卓)应用内切换语言 实现多语言功能
- Android之控制视图
- 请求对象Android(安卓)网络操作常用的两个类