0

アダプタからListViewを作成しましたが、新しいアクティビティでこのアイテムに関する情報を提供するアイテムを選択したいと思います。

それが私のコードです:

        protected override void OnListItemClick(ListView listview, 
                                            View view, int pos, long id)
    {
        var selectedvalue = sw_items[pos];
        var i = new Intent(this, typeof(Activity1));
        i.PutExtra("selectedvalue", selectedvalue);
        StartActivity(i);
    }

しかし、私はこのエラーを受け取ります:

MainActivity.OnListItemClick(Android.Widget.ListView, Android.Views.View, int, long)' is marked as an override but no suitable method found to override (CS0115)

MainActivityはActivity

この問題を解決するにはどうすればよいですか、またはこれを行う他の方法はありますかActivity

4

3 に答える 3

2

でオーバーライドOnListItemClickする場合MainActivityは、アクティビティListActivityを単純な古いものではなく、から継承する必要がありますActivity

また、Listviewxml内のがID "@ android:id / list"である(またはlistコード内にある場合)ことを確認してください。

あなたが従うことができる本当に素晴らしいガイドがあります:ListViewにデータを入力する

于 2013-03-08T16:35:46.010 に答える
1

次のことを試してください。

@Override
protected void OnListClick(ListView listview, View view, int pos, long id) {
    var selectedvalue = sw_items[pos];
    var i = new Intent(this, typeof(Activity1));
    i.PutExtra("selectedvalue", selectedvalue);
    StartActivity(i);
}
于 2013-03-07T14:19:41.550 に答える
1

オーバーライドを削除する必要があります。次に、セットアップのどこかで、メソッドをリストのクリックイベントに接続する必要があります。

通常、これは次のように行われます。

myList.OnClick += new ClickEventHandler(myMethodName);

しかし、私はモノドロイドを使用したことがないので、若干のニュアンスがあるかもしれません。

于 2013-03-07T14:40:54.147 に答える