-1
リストビュー項目をクリックするとメニューポップアップが表示され、クリックした項目の下にメニューポップアップが表示されますか?ListViewアイテムのポップアップメニューはどうやって作成しますか?
これを行うには、ListView.ItemClickイベントを使用してこれを行うことはできますか?
この質問はapi 22+です。
リストビュー項目をクリックするとメニューポップアップが表示され、クリックした項目の下にメニューポップアップが表示されますか?ListViewアイテムのポップアップメニューはどうやって作成しますか?
これを行うには、ListView.ItemClickイベントを使用してこれを行うことはできますか?
この質問はapi 22+です。
この質問には多くの回答がありましたが、私が見つけたのは古いAPIです。これが私のやり方です。
ListView.ItemClickイベントを使用してこれを実行し、図のようにメニューを表示できます。
この情報のほとんど
[Activity(Label = "Employee Management", Theme = "@android:style/Theme.Material")]
public class EmpMgmtActivity : Activity
{
ListView empListView;
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.EmpMgmtLayout);
empListView = FindViewById<ListView>(Resource.Id.EmpMgmtList);
GenerateEmpList(EmployeeStorage.employeeList);
empListView.ItemClick += EmpListView_ItemClick;
}
private void EmpListView_ItemClick(object sender, AdapterView.ItemClickEventArgs e)
{
var menu = new PopupMenu(this, empListView.GetChildAt(e.Position));
menu.Inflate(Resource.Layout.popup_menu);
menu.MenuItemClick += (s, a) =>
{
switch (a.Item.ItemId)
{
case Resource.Id.pop_button1:
// update stuff
break;
case Resource.Id.pop_button2:
// delete stuff
break;
}
};
menu.Show();
}
を見つけるのは非常に簡単です(名前は削除)、一部は私が右にそれをポップアップを持ってするのではなく、ポップアップするイマイチとのトラブルメニューを取得していましたラインアイテム。私にとって重要なのは、リストから個々のビューをルックアップすることでした。あなたも引数にしてい (ビュー)送信者 を使用する場合は
var menu = new PopupMenu(this, empListView.GetChildAt(e.Position));
は、それは理想的ではないページの上部付近にメニューを配置します。
リストビューの実際のビューを返すListView.GetChildAtポップアップメニューの
XMLコード:
<?xml version="1.0" encoding="utf-8" ?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/pop_button1" android:title="Edit Employee" showAsAction="always" />
<item android:id="@+id/pop_button2" android:title="Delete Employee" showAsAction="always" />
</menu>
・ホープ、このことができます!