2012-05-08 6 views
0

アダプタで文字列のリストを作成していますが、特定の条件に基づいてこれらのアイテムに異なるレイアウトプロパティを適用するにはどうすればよいですか?特定の条件に基づいてアイテムを一覧表示するために、さまざまなスタイルを与える方法はありますか?

たとえば、リスト項目のテキストに特定の単語が含まれているかどうかを確認し、テストの結果に基づいて、マージンを増減させたいと思ったとします何か意味をなさない:D)。

答えて

0

次のようなアダプタを作成します。ここでの唯一の背景色が変更され、より多くの詳細については、

public class SpecialAdapter extends SimpleAdapter { 
    private int[] colors = new int[] { 0x30FF0000, 0x300000FF }; 

    public SpecialAdapter(Context context, List<HashMap<String, String>> items, int resource, String[] from, int[] to) { 
     super(context, items, resource, from, to); 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     View view = super.getView(position, convertView, parent); 
     int colorPos = position % colors.length; 
     view.setBackgroundColor(colors[colorPos]); 
     return view; 
    } 
} 

....ウル条件に応じて、そこにレイアウトを変更してみてください。このリンクにhttp://eureka.ykyuen.info/2010/03/15/android-%E2%80%93-applying-alternate-row-color-in-listview-with-simpleadapter/

+0

Noobの質問を確認してください。私はまだこれを行うことができます私の活動は、ListViewコントロールを拡張する場合作業? – user1301428

+0

わかりました。とにかく、別の質問:私の条件にリスト項目のテキストの一部が含まれる場合はどうですか?この点を明確にするために質問を編集しました。 – user1301428

関連する問題