私はListView
です。ユーザーがその項目の1つをクリックすると、その項目が青色になります。これを行うために、ListView
アクティビティのonCreate()
メソッドでは、ユーザーのクリックに対してリスナーを設定しました。ListViewの項目の背景色を設定する際の問題
m_listFile=(ListView)findViewById(R.id.ListView01);
m_listFile.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View arg1,int arg2, long arg3) {
arg0.getChildAt(arg2).setBackgroundColor(Color.BLUE);
}
});
すべてが最初に表示されるアイテムのために正常に動作しますが、私は、リストをスクロールするとき、私はarg2
値は右の項目のインデックス位置を持っている場合でも、arg0.getChildAt(arg2).setBackgroundColor(...)
で NullPointerException
をしました。私は、このアダプタを使用ListView
をロードする際
私ListView
は、二行項目の構造を有する:
SimpleAdapter sa = new SimpleAdapter(
getApplicationContext(),
expsList,
R.layout.listelement,
new String[] { "screen_name","text" },
new int[] { R.id.Name, R.id.Value}) {
};
m_listFile.setAdapter(sa);
私はこの問題を解決する方法を理解していません。助けてもらえますか?
は、カスタムアダプタを使用していますあなたの 'ListView'のために? – Luksprog
私は最初の投稿を編集しました – Ant4res