0
ListView
内の行を別の色で表示したい - Xamarin.Android
C# Project。Xamarin.Android別の色のリスト
public override View GetView(int position, View convertView, ViewGroup parent)
{
var item = items[position];
View view = convertView;
if (view == null) // no view to re-use, create new
view = context.LayoutInflater.Inflate(Resource.Layout.CustomView, null);
view.FindViewById<TextView>(Resource.Id.Text1).Text = item.Heading;
view.FindViewById<TextView>(Resource.Id.Text2).Text = item.SubHeading;
view.FindViewById<ImageView>(Resource.Id.Image).SetImageResource(item.ImageResourceId);
if (position % 2 == 0)
{
view.FindViewById<RelativeLayout>(Resource.Id.listView_item_bg).SetBackgroundColor(Color.Pink);
}
else
{
view.FindViewById<RelativeLayout>(Resource.Id.listView_item_bg).SetBackgroundColor(Color.Blue);
}
return view;
}
あなたが参照することができ、完全なコードの場合:たとえば
:
は、ここでは、位置に応じてGetView
色をオーバーライドすることができ、私のコード
ListView DialogoList = (ListView)FindViewById(Resource.Id.DialogoList);
Data data = new Data();
string[] dialogolist = data.Dialogo(Data.level, Data.Lesson);
DialogoList.Adapter = new ArrayAdapter(this, Android.Resource.Layout.SimpleListItem1, dialogolist);
カスタムアダプタを作成し、GetViewをオーバーライドし、位置に応じて色を変更してください –
はい、それは動作します、ありがとう@ YorkShen-MSFT –