Android開發(fā) -- setTag的妙用和The key must be an application-specific resource id 異常
tag是view的一個屬性,也可以說是view用于存放參數(shù)的一個map,對于提高性能和參數(shù)傳遞都有妙用,比如提高listview的性能:
用于緩存item的view
ItemViewHolder holder;
if (convertView == null) {
holder = new ItemViewHolder();
convertView = LayoutInflater.from(context).inflate(R.layout.view_item, null);
holder.timeTextView = (TextView) convertView.findViewById(R.id.text_item_content_time);
holder.remarkTextView = (TextView) convertView.findViewById(R.id.text_item_content_remark);
convertView.setTag(holder);
} else {
holder = (ItemViewHolder)convertView.getTag();
}
if(mMessageListGroup.get(mMessageList.get(position).getGroupId()).isShown()){
convertView.setTag(R.id.child_show, true);
}else{
convertView.setTag(R.id.child_show, false);
}
return convertView;
}
在上面的代碼中用到了tag,如果是一個好說直接setTag即可,如果有多個又怎么辦呢?
setTag還有一個帶int類型的重載,但是設置final類型的常量或者寫死數(shù)字都會出現(xiàn):
The key must be an application-specific resource id 異常:
需要在ids.xml文件中定義一個ID,然后設置在這里??!
以上就是Android開發(fā)setTag的妙用的全部內(nèi)容,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Android RecyclerView使用GridLayoutManager間距設置的方法
本篇文章主要介紹了Android RecyclerView使用GridLayoutManager間距設置的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-12-12
Android?Flutter實現(xiàn)創(chuàng)意時鐘的示例代碼
時鐘這個東西很奇妙,總能當做創(chuàng)意實現(xiàn)的入口。這篇文章主要介紹了如何通過Android?Flutter實現(xiàn)一個創(chuàng)意時鐘,感興趣的小伙伴可以了解一下2023-03-03
Ubuntu Android源碼以及內(nèi)核下載與編譯
本文主要介紹Android源碼的下載和編譯,這里整理了相關資料及如何下載和編譯的詳細步驟,有需要的小伙伴可以參考下2016-09-09
Android Studio時間選擇器的創(chuàng)建方法
這篇文章主要為大家詳細介紹了Android Studio時間選擇器的創(chuàng)建方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-10-10
Android GestureDetector實現(xiàn)手勢滑動效果
這篇文章主要為大家詳細介紹了Android GestureDetector實現(xiàn)手勢滑動效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-05-05
react native android6+拍照閃退或重啟的解決方案
android 6+權(quán)限使用的時候需要動態(tài)申請,那么在使用rn的時候要怎么處理拍照權(quán)限問題呢?本文提供的是一攬子rn操作相冊、拍照的解決方案,需要的朋友可以參考下2017-11-11

