2016-09-29 4 views
0

代替グループヘッダーの2つの色を無効なリストビューに設定しました。しかし、何回かクリックすると、色がどのグループ行にも拡大/縮小されます。ここで拡張可能なリストビューグループのヘッダーカラーの変更

これは、リストをスクロールした後に起こっている

if (convertView == null) { 
     LayoutInflater infalInflater = (LayoutInflater) this._context 
       .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     convertView = infalInflater.inflate(R.layout.list_group, null); 

     if(groupPosition % 2 == 1) { 
      convertView.setBackgroundColor(Color.parseColor("#3C3C3C")); 
     }else { 
      convertView.setBackgroundColor(Color.parseColor("#000000")); 
     } 
    } 

、私のコードです。 =

if (groupPosition % 2 == 0) 
{ 
    convertView.setBackgroundColor(Color.parseColor("#3C3C3C")); 
} 
else 
{ 
    convertView.setBackgroundColor(Color.parseColor("#000000")); 
} 

答えて

1

あなたがこれを試すことができます試してみました=ヌルチェック

if (convertView == null) { 
    LayoutInflater infalInflater = (LayoutInflater) this._context 
      .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    convertView = infalInflater.inflate(R.layout.list_group, null); 
} 

if(groupPosition % 2 == 0) { 
     convertView.setBackgroundColor(Color.parseColor("#3C3C3C")); 
    }else { 
     convertView.setBackgroundColor(Color.parseColor("#000000")); 
    } 
+0

。色は変わりますが、色を変えた後、色はどの行にも移動します。 –

+0

最初のチェック:if(convertView == null){ \t \t \t convertView = inflater.inflate(R.layout.listrow_group、null); \t \t}次に、If条件の外にコードを設定します。私のコードで –

+0

:: IF(convertView == NULL){ LayoutInflater infalInflater =(LayoutInflater)this._context \t \t \t \t \t .getSystemService(Context.LAYOUT_INFLATER_SERVICE)。 \t \t \t convertView = infalInflater.inflate(R.layout.list_item、NULL); \t \t} –

0

if(groupPosition % 2 == 0) 

代わり

if(groupPosition % 2 == 1) 

で行うと、条件convertViewの外にいる場合おいてください。また、私は、これは1

private int[] colors = new int[] { Color.parseColor("#000000"), Color.parseColor("#3C3C3C") }; 
int colorPos = groupPosition % colors.length; 
convertView.setBackgroundColor(colors[colorPos]); 
1
if(groupPosition % 2 == 0) { 
      convertView.setBackgroundColor(Color.parseColor("#3c3c3c")); 
     }else { 
      convertView.setBackgroundColor(Color.parseColor("#000000")); 
     } 

場合(convertView == null)の外にこのコードを入れて、私はすでにthis.butが機能していない試してみました。この状態

+0

ありがとうMohit、その働き。 –

+0

あなたが満たしていればansを受け入れる –

関連する問題