android список меняет цвет, но не работает - PullRequest
0 голосов
/ 26 мая 2020

У меня есть список, а в списке есть некоторые данные,
Надеюсь, эти данные имеют другой цвет
EX: если это Урок 1, цвет синий, а Урок 2 - красный .....
итак , Я использую

name.setTextColor (Color.BLUE);

, но его нельзя изменить.
почему?


это мой код:

public class Listening extends AppCompatActivity {
    ArrayList<Listenlist> listenlists = new ArrayList<Listenlist>();
    ListView listview;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.listening);
        listview = (ListView) findViewById(R.id.list);
        seraechsql2();
    }
    public void seraechsql2(){
        View v =null;
        String result = dblisten.executeQuery();

        try{

           TextView name = ((TextView) v.findViewById(R.id.name));
            JSONArray jsonArray = new JSONArray(result);
            length=jsonArray.length();
            for(int i =0; i < jsonArray.length(); i++) 
            {
                JSONObject jsonData = jsonArray.getJSONObject(i);
                String les=jsonData.getString("lesson");
                Listenlist team = new Listenlist("L"+les);
               if(les==.....){//my condition
              name.setTextColor(Color.BLACK);//I try to change it to black but fail
               }
                listenlists.add(team);
                final ListenlistAdapter adapter = new ListenlistAdapter(this, R.layout.listenlist, listenlists);
                listview.setAdapter(adapter);
                listview.setTextFilterEnabled(true);
                listview.setSelector(R.drawable.green);
            }
        }
        catch(Exception e){}
    }
}

спасибо

Ответы [ 2 ]

1 голос
/ 26 мая 2020

, если вы используете listview, вы должны создать отдельный настраиваемый layout.simple_list_item_1 с вашей собственной настройкой, и вам также понадобится класс для управления этим макетом (добавьте в него данные, создайте новые элементы и т. Д. c). Это сложнее, чем RecyclerView.

Подробности здесь: https://www.simplifiedcoding.net/custom-listview-android/

0 голосов
/ 26 мая 2020

Я бы посоветовал вам использовать RecyclerView для отображения списка элементов. Вы можете обновить цвет на основе позиции элемента. обратитесь по этой ссылке - https://developer.android.com/guide/topics/ui/layout/recyclerview

Дополнительные объяснения - Изменение цвета элементов в ListView - Android

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