当前位置: 移动技术网 > IT编程>移动开发>Android > Android开发 -- setTag的妙用和The key must be an application-specific resource id 异常

Android开发 -- setTag的妙用和The key must be an application-specific resource id 异常

2019年07月24日  | 移动技术网IT编程  | 我要评论

继承者们ost,天津金逸电影院,恶魔身后的酸樱桃

tag是view的一个属性,也可以说是view用于存放参数的一个map,对于提高性能和参数传递都有妙用,比如提高listview的性能:

用于缓存item的view

复制代码 代码如下:
public view getview(final int position, view convertview, viewgroup parent) { 
    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类型的常量或者写死数字都会出现:

the key must be an application-specific resource id 异常

需要在ids.xml文件中定义一个id,然后设置在这里!!

以上就是android开发settag的妙用的全部内容,希望能给大家一个参考,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网