簡體   English   中英

更改 ListView 一行的文本顏色

[英]Change the text color of one row of a ListView

我有一個正確填充的ListView ,它顯示了它的所有項目。 我想知道如何更改其中一行的顏色(索引 = 0)。 我試圖使用ListView並使用listView.getChildAt(0)到達它的孩子,但我沒有看到任何更改文本顏色的方法(僅用於背景)

以防萬一需要我發布我用來更新ListView

String[] aux = new String[namesList.size()];
            namesList.toArray(aux);
            arrayAdapter = new ArrayAdapter<>(getActivity(), R.layout.row, aux);
            listView.setAdapter(arrayAdapter);
            if(from)
                listView_address.getChildAt(0) // Not a method which I could use
            setSelectNameListeners();

你不能改變 String 的顏色,但是你可以改變 textview 的顏色。 String 只告訴要顯示什么, textView 將負責如何顯示信息,現在要更改文本的顏色,您將需要一個自定義適配器並使該適配器返回您的項目,您將獲得第一個項目和改變它的顏色。

你可以試試這個:

        String[] aux = new String[namesList.size()];
        namesList.toArray(aux);
        arrayAdapter = new ArrayAdapter<>(getActivity(), R.layout.row, aux){
             @Override
            public View getView(int position, View convertView, ViewGroup parent){
              if(position == 0){   
               // Get the Item from ListView
               View view = super.getView(position, convertView, parent);

               // Initialize a TextView for ListView each Item
               TextView tv = (TextView) view.findViewById(android.R.id.text1);

               // Set the text color of TextView (ListView Item)
               tv.setTextColor(Color.RED);

               // Generate ListView Item using TextView
               return view;
               }   
             }
        };
        listView.setAdapter(arrayAdapter);
        

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM