android关于控件中setTag(key,Object)的设置的相关问题
setTag () 是 Android 的 View 类中很有用的一个方法,可以用它来给控件附加一些信息,在很多场合下都得到妙用。
所以抛出IllegalArgumentException 的原因就在于 key 不唯一,那么如何保证这种唯一性呢?
很明显定义一个 final 类型的 int 变量和硬编码一个值的方式都是行不通的。
比如下面一个错误的例子:
private static final int TAG_ONLINE_ID = 1;
((Button)row.findViewById(R.id.btnPickContact)).setTag(TAG_ONLINE_ID,objContact.onlineid);
05-18 20:29:38.044: ERROR/AndroidRuntime(5453): java.lang.IllegalArgumentException: The key must be an application-specific resource id.
05-18 20:29:38.044: ERROR/AndroidRuntime(5453):at android.view.View.setTag(View.java:7704)
05-18 20:29:38.044: ERROR/AndroidRuntime(5453):at com.mypkg.viewP.inflateRow(viewP.java:518)
那如果一定需要使用多个 tag 绑定怎么做呢? 那么这么做,在res/values/strings.xml 中添加
<resources>
<item type="id" name="tag_first">
</item>
<item type="id" name="tag_second">
</item>
</resources>
使用
imageView.setTag(R.id.tag_first, "Hello");
imageView.setTag(R.id.tag_second, "Success");
就这就保证了 key 值的唯一性。
取值
String tag_first=v.getTag(R.id.tag_first).tostring();
From:http://blog.csdn.net/brokge/article/details/8536906
android关于控件中setTag(key,Object)的设置的相关问题相关推荐
- android EditText 控件中加入图片(非背景图片)
效果如下: 只需要 利用EditTExt的 drawableLest 属性 <EditText android:id="@+id/Edit_user"android:layo ...
- Android常用控件之Fragment仿Android4.0设置界面
Fragment是Android3.0新增的概念,是碎片的意思,它和Activity很相像,用来在一个Activity中描述一些行为或部分用户界面:使用多个Fragment可以在一个单独的Activi ...
- [Android] 拍照、截图、保存并显示在ImageView控件中
最近在做Android的项目,其中部分涉及到图像处理的内容.这里先讲述如何调用Camera应用程序进行拍照,并截图和保存显示在ImageView控件中以及遇到的困难和解决方法. PS:作者购买 ...
- android 获取控件在屏幕中的坐标
今天,简单讲讲android如何获取控件在屏幕中的坐标. 这个其实也很简单,但是昨天做一个功能时,需要功能控件的坐标做一些逻辑操作时,居然不知道怎么做.所以在网上查找了资料后,解决了这个问题.这里记录 ...
- android 日程安排view,RecyclerView 列表控件中简单实现时间线
时间 时间,时间,时间啊:走慢一点吧- 看见很多软件中都有时间线的东西,貌似天气啊,旅游啊什么的最多了:具体实现方式很多,在本篇文章中讲解一种自定义View封装的方式. 效果 先来看看效果. 分析 软 ...
- android 的a标签,Android开发技巧之在a标签或TextView控件中单击链接弹出Activity(自定义动作)...
在5.2.1节和5.2.2节介绍了标签以及TextView自动识别的特殊文本(网址.电话号.Email等),这些都可以通过单击来触发不同的动作.虽然这些单击动作已经可以满足大多数需要了,但如果读者想在 ...
- Android kotlin 将Base64字符串转换成Bitmap,并在jetpack compose的Image控件中显示
Android kotlin 将Base64字符串转换成Bitmap 前言 代码 将Base64字符串转换成Bitmap 在jetpack compose的Image控件中显示Bitmap 完事 前言 ...
- android中翻页控件,Android GridView控件分页自定义
上一篇:Android GridView控件自定义中,我们自定义了Android GridView控件. 包名解释: com.yaomei.activity.adapter DEMO使用到的自定义 ...
- Android图表控件MPAndroidChart——BarChart实现多列柱状图以及堆积柱状图
目录 前言 1. 数据准备 1.1 数据来源 2. 图表展示 2.1 MPAndroidChart获取 2.2 数据对象获取 2.3 数据展示 3. 柱状图外观完善 3.1 去掉图表外框,描述内容以及 ...
最新文章
- 一、Focal Loss理论及代码实现
- linux子系统使用rstudio,Windows 10 Linux子系统 (wsl)学习手记
- Linux下的XAMPP基本配置技巧(设置虚拟主机、添加FTP账户等)
- Spring–添加SpringMVC –第2部分
- 全网最新Spring Boot2.5.1整合Activiti5.22.0企业实战教程<UEL表达式篇>
- es6 Class 的 getter函数和setter函数
- office怎么像wps一样多栏_时常受到欺负怎么办?——要像对付野狗一样对付坏人!...
- Mathpix Snip他们都说好用!我也试一试尝试下载-安装-使用
- Linux 文件删除不了? 一招教你搞定!
- MongoDB与物联网应用讲座
- workerman wss 配置备忘录
- 数据分析pandas使用
- delphi 调用带有返回值的sql SERver 2008 存储过程
- uniapp小程序获取定位(高德SDK)
- mybatis,引入pageHelper,参数中有pageNum和pageSize,且都不为空,会分页
- leaftlet 中Polygon的使用属性
- Paper.js入门:项目和项目
- 用python做数据处理怎么挣钱_个人利用python爬虫技术怎么挣钱
- 小视频app源码,Android 滑动拼图验证码控件
- Python数据可视化 Pyecharts 制作 Parallel 平行坐标系