1

ListView のテキストの色を変更しようとしていたので、ViewBinder を作成しましたが、テキストはまだ白く、何も変わりません。どうすればよいですか?

// map each name to a TextView
    String[] from = new String[] { "event" };
    int[] to = new int[] { R.id.countryTextView };
    conAdapter = new SimpleCursorAdapter(Clock.this, R.layout.day_plan, null, from, to);
    setListAdapter(conAdapter); // set adapter

    SimpleCursorAdapter.ViewBinder binder = new SimpleCursorAdapter.ViewBinder() {

        @Override
        public boolean setViewValue(View view, Cursor cursor, int columnIndex){    
            int getIndex = cursor.getColumnIndex("colour");
            String color = cursor.getString(getIndex);
           tv = (TextView)findViewById(R.id.countryTextView);

            tv.setTextColor(Color.BLUE);

           if(color.equals("Green"))
            {                   
                tv.setTextColor(Color.rgb(0,255,0));
                return true;
            } 
            return false;          
        }};
4

1 に答える 1

1

電話しましたconAdapter.setViewBinder(SimpleCursorAdapter.ViewBinder)か?つまり、それらのメソッドが実際に呼び出されていると確信していますか?

また、これらの行の 1 つを変更します。

       tv = (TextView)view.findViewById(R.id.countryTextView); // <-- add 'view.'
于 2013-01-11T19:53:13.630 に答える