ここに問題があります。それはシンプルに見え、私はそのソリューションを探し続けています。残念ながら、何も見つかりません。これが私の問題です...私がやろうとしていることは、On item clickメソッドからリストビューに表示される文字列を取得することです。
これは私のリストビューです:
- lol
- hi
- waw
「lol」をクリックすると、「lol」という文字列が表示されます。
ここでコードに何を入れればよいですか? :
lv = (ListView) findViewById(R.id.list_view);
lv.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3)
{
// Intent newI = new Intent(this,PDetail.class);
Intent newI = new Intent (Create.this, PDetail.class);
//String sd = ((() arg1).getText()).toString();
//newI.putExtra("x", arg2);
startActivity (newI);
// db.getList(arg3);
}});
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3)
{
String data=(String)arg0.getItemAtPosition(arg2);
}});
data
には、クリックした位置のデータが含まれます。それでやりたいことは何でもしてください。
arg0
はAdapterView
で、通常はListView
です。 arg2
はListView
内の位置です。アダプターからアイテムを取得できます。
Object item = arg0.getItemAtPosition(arg2);
アダプター内のオブジェクトのタイプに応じて、簡単な解決策は次のとおりです。
String value = item.toString();
arg1
リスナーのパラメーターは、クリックされたアイテムのビューです。
ListView
のアイテムがTextViews
であるとすると、次のことを試すことができます。
String itemText = ((TextView) arg1).getText();
string val =(String)arg0.getItemAtPosition(arg2)を使用します