国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

Android setTag方法的key問題解決辦法

2019-12-12 05:16:24
字體:
供稿:網(wǎng)友

android在設(shè)計View類時,為了能儲存一些輔助信息,設(shè)計一個一個setTag/getTag的方法。這讓我想起在Winform設(shè)計中每個Control同樣存在一個Tag。

今天要說的是我最近學(xué)習(xí)android遇見的setTag的坑。一般情況下我們只需要使用唯一參數(shù)的setTag方法。但有時我們需要存儲多個數(shù)據(jù),所以這個時候我們就需要使用帶key的重載。

文檔是描述:“ The specified key should be an id declared in the resources of the application to ensure it is unique (see the ID resource type). Keys identified as belonging to the Android framework or not associated with any package will cause an IllegalArgumentExceptionto be thrown.”

這里說明必須保證key的唯一,但是如果我們使用java常量定義key(private static final int TAG_ID = 1;)這樣你任然會遇見如下錯誤:

java.lang.IllegalArgumentException: The key must be an application-specific resource id

正確的解決方案是:

在res/values/strings.xml中定義這個key常量,如下:

  <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");

以上就是對Android setTag方法的key問題的解決辦法,謝謝大家對本站的支持!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 渝北区| 文成县| 汝阳县| 怀来县| 海口市| 彰化县| 贵阳市| 普格县| 丰原市| 辽阳县| 文化| 灵璧县| 邵阳县| 三门县| 兴城市| 平湖市| 黎城县| 游戏| 沙雅县| 望奎县| 丰原市| 历史| 榆社县| 丽水市| 肥东县| 潢川县| 西华县| 固始县| 无为县| 涟水县| 宁都县| 枝江市| 海安县| 凤庆县| 舞钢市| 拜泉县| 珲春市| 疏勒县| 乌鲁木齐市| 明星| 衢州市|