listview
複数の選択肢がある があります。各項目にはtextview
「MORE」という言葉があります。テキストビューをクリックすると、次のページに製品の詳細が表示されます。
リストビューの onitemclicklistenerpr_id = tx.getText().toString();
でこれを行いました。これは、製品tx
ID を持つリスト内のテキスト ビューでありpr_id
、インテントを通じて次のページに送信する製品 ID です。
more.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent i1 = new Intent(Product_List.this,
Product_View.class);
i1.putExtra("productid", pr_id);
Log.i("pid", pr_id);
startActivity(i1);
}
});`
すべてが正常に動作しますが、問題は、複数選択があり、ユーザーがlistview
1 番目、2 番目、3 番目の順に 3 つのアイテムを選択し、1 番目のアイテムの「MORE」ボタンをクリックしたときです。
「MORE」ボタンをクリックすると、最初の項目の詳細が表示されます。ただし、リストの 3 番目の項目を選択したため、代わりにこれらの詳細が表示されます。つまり、選択した 1 番目の項目ではなく、最後に選択した項目がビューを保持します。
どうすればこの問題を克服できますか?