私はAndroidプログラミングにかなり慣れていないため、自分で多くのことを解決できません。ここ数時間、リスト ビューでのユーザーのクリックに基づいて何らかのアクティビティを実行するためのコードを書こうとしていました。基本的に、私は以下を行う必要があります:
1) BOOK ID、BOOK NAME、および WRITER 情報を含むリストビューを既に正常に生成しています 2) 各行をクリックすると、その行の BOOK ID を読み取り、メイン ページに戻って事前定義された関数 x を実行しますメインページの (BOOK_ID)。
私はたくさん検索しようとしましたが、初心者であるため、すべてが私をより混乱させています. どんな助けでも大歓迎です。
リストビューの単一ブロック:
<TextView
android:id="@+id/bookname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Book Title" />
<TextView
android:id="@+id/bookid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Book ID" />
<TextView
android:id="@+id/writer"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Writer" />
</RelativeLayout>
Java クラス:
mylibmandbhandler db = new mylibmandbhandler(this);
List<mylibman> allfld = db.getAllRecord();
ArrayList<HashMap<String, String>> allbookList = new ArrayList<HashMap<String, String>>();
for (mylibman cn : allfld) {
HashMap<String, String> map = new HashMap<String, String>();
map.put(LIST_KEY_ID, Integer.toString(cn.getBookid()));
map.put(LIST_KEY_NAME, cn.getBookname());
map.put(LIST_KEY_WRITER, cn.getWriter());
allbookList.add(map);
}
list=(ListView)findViewById(R.id.list);
adapter=new MylibmanList(this, allbookList); //calling adapter class
list.setAdapter(adapter);
// UPTO THIS POINT CODE IS WORKING FINE
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// NEED TO GET THE BOOKID OF THE ROW UPON CLICKING, GO BACK TO MAIN ACTIVITY, AND CALL A FUNCTION X()
}
});