ListView
ListView
Mian.axmlでListViewの定義をします。 そのあと表示させるViewのテンプレートを作成しました。
Main.axml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <ListView android:id="@+id/listView" android:layout_height="match_parent" android:layout_width="wrap_content" /> </LinearLayout>
ViewTmplate
<?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/textItem" android:textSize="30sp" android:layout_width="match_parent" android:layout_height="match_parent" />
ListViewにlistを渡すためにArrayAdapterを使います。
MainActivity.cs
using System; using Android.App; using Android.Content; using Android.Runtime; using Android.Views; using Android.Widget; using Android.OS; namespace App3_native.Droid { [Activity (Label = "App3_native.Android", MainLauncher = true, Icon = "@drawable/icon")] public class MainActivity : Activity { ListView listView; ArrayAdapter adapter; protected override void OnCreate (Bundle bundle) { base.OnCreate(bundle); SetContentView(Resource.Layout.Main); listView = FindViewById<ListView>(Resource.Id.listView); var items = new string[] { "List1", "List2", "List3", "List4" }; adapter = new ArrayAdapter<string>(this, Resource.Layout.ViewTmplate, items); listView.Adapter = adapter; listView.ItemClick += OnListItemClick; } private void OnListItemClick(object sender, AdapterView.ItemClickEventArgs e) { var listView = sender as ListView; var t = adapter.GetItem(e.Position).ToString(); Toast.MakeText(this, t, ToastLength.Short).Show(); } } }