我正在使用setBackgroundResource在单击时设置布局中每个单元格的背景。根据条件,为单元格设置了不同的背景可绘制对象。
但这会花费很多时间,有时当我单击cell4时什么也没发生,然后当我单击cell6时,cell4背景改变了,有时很长一段时间后也会改变。我该如何解决?
我在下面附加了部分代码:
if(cell.getTag()==11){
cell.isSelected=false
cell.setTag(0xFFFFFFFF.toInt())
textView.setTextColor(0xFF87CEEB.toInt())
cell.setBackgroundResource(R.drawable.bordered_rectangle)
}
else if(isChecked || cell.getTag()==22) {
cell.isSelected=true
cell.setTag(11.toInt())
textView.setTextColor(0xFF000000.toInt())
cell.setBackgroundResource(R.drawable.border_boardselect)
}
R.drawable.bordered_rectangle
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/listview_background_shape">
<stroke android:width="3dp" android:color="#ff444444" />
<padding android:left="2dp"
android:top="2dp"
android:right="2dp"
android:bottom="2dp" />
<!--<solid android:color="#ffffff" />-->
<gradient
android:angle="45"
android:endColor="#87CEEB"
android:centerColor="#768087"
android:startColor="#000"
android:type="linear" />
</shape>
我尝试将drawable放在drawable-nodpi文件夹中。我不知道该怎么办。 真的需要一些帮助。
答案 0 :(得分:0)
这可能只是一个假设,但可能是渐变。
但是,从您的代码中,我建议您使用选择器而不是2个不同的Drawable。至少将使代码更小,更不会混淆。
您对此有何看法?视图本身可能很难绘制背景,因为与图像相比,背景非常沉重。