setBackgroundResource () занимает много времени, чтобы показать в kotlin / android - PullRequest
0 голосов
/ 17 апреля 2019

Я использую setBackgroundResource для установки фона каждой ячейки в макете по нажатию кнопки. В зависимости от условия для ячеек устанавливаются различные фоновые рисунки.

Но это занимает много времени, иногда, когда ящелкните ячейку4, ничего не происходит, а затем, когда я нажимаю ячейку6, фон ячейки изменяется, и иногда он меняется через долгое время. Как я могу это исправить?

Я прикрепил часть своего кода ниже:

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. Я не знаю, что еще делать.Здесь действительно нужна помощь.

1 Ответ

0 голосов
/ 18 апреля 2019

Это может быть только предположение, но это может быть Градиент.

Однако из вашего кода я бы посоветовал вам использовать Селектор, а не 2 разных Drawables. Это по крайней мере сделает код меньше и менее запутанным.

А что ты думаешь? Самому представлению может быть трудно рисовать фон, так как фон очень тяжелый по сравнению с изображениями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...