ขอคำแนะนำการเลือก Multi-Checkbox ใน ListView โดยกดปุ่มจะนำข้อมูล checkbox ที่เราเลือกไป แสดงผลที่อีก activity อื่น ปัญหาตอนนี้เมื่อ click ปุ่ม OK แล้วไม่สามารถระบุได้ว่า checkbox ไหนถูกเลือกครับ จึงขอคำแนะนำครับ
ขอคำแนะนำการเลือก Multi-Checkbox ใน ListView โดยกดปุ่มจะนำข้อมูล checkbox ที่เราเลือกไป แสดงผลที่อีก activity อื่น ปัญหาตอนนี้เมื่อ click ปุ่ม OK แล้วไม่สามารถระบุได้ว่า checkbox ไหนถูกเลือกครับ จึงขอคำแนะนำครับ
ดูข้อมูลเพิ่มเติมเกี่ยวกับนโยบายความเป็นส่วนตัว และการใช้คุกกี้ของเราคลิก
คุกกี้เหล่านี้มีความสำคัญต่อการให้บริการบนเว็บไซต์แก่คุณ และเพื่อให้คุณสามารถใช้คุณลักษณะบางอย่างได้ คุกกี้เหล่านี้ช่วยในการยืนยันตัวบุคคลของผู้ใช้งานและช่วยป้องกันการปลอมแปลงบัญชีผู้ใช้งาน หากไม่มีคุกกี้เหล่านี้เราอาจไม่สามารถให้บริการแก่คุณได้ เราใช้คุกกี้ดังกล่าวนี้เพื่อให้บริการแก่คุณ
แม้ว่าอาจเกิดคุกกี้ แต่อาจไม่สามารถบันทึกได้เนื่องจากมีสมุดบันทึกที่คุณสามารถอัปเดตได้เว็บไซต์นี้อาจมีคุกกี้หรืออาจเกิดคุกกี้ใหม่อีกครั้ง
ดูข้อมูลเพิ่มเติมคลิก
ลองดูตัวอย่างนี้ ครับ
http://appfulcrum.com/2010/09/12/listview-example-3-simple-multiple-selection-checkboxes/
ไม่ยากเท่าไร ครับ ^^
ขอบคุณมากๆครับ คุณ base
ตามตัวอย่างที่แนะนำเขาใช้ android.R.layout.simple_list_item_multiple_choice (xml) ซึ่งสามารถระบุ checkbox ที่เลือกได้ครับ แต่หน้าจอที่ผมทำจะประกอบไปด้วย imageView, textView 2 ตัว, และ checkbox (ตามรูปที่แนบครับ)
ถ้านำ checkTextView ที่ simple_list_item_multiple_choice.xml มาใช้ครับ ผมพบปัญหาที่ตามมาของ checkTextView คือ run program แล้ว เมื่อ click checkbox จะไม่ตอบสนองครับ คือ checkbox ไม่ถูกติกให้ครับ
จึงอยากทราบว่าควรจะต้องระบุ code ตรงส่วนไหนเพิ่มเพื่อให้ทำงานได้ครับ
อันนี้เดา เอานะครับ คุณ disable checkbox ไว้หรือเปล่า มันแย่งได้ สอง กรณีนะครับ คือ 1. disable checkbox ไว้แล้วกดยังไงก็กดไม่ได้ (แน่นอน อันนี้กดจนหน้าจอพัง ก็ไม่ได้ ** ล้อเล่น) 2. click checkbox แล้วมันไม่เกิดอะไรขึ้นเลย คือ enable มันแล้วกดไม่ได้ (อันนี้ไม่รู้จิงๆๆ ครับ กรณีนี้ต้องแจ้ง บั๊กให้ google รู้แล้วและครับ เพราะว่า checkbox มันเป้น standard component จิงๆๆ มันไม่ควรแบบนี้ขึ้นเลย อันนี้ก็ล้อเล่น อีกและ ขําๆๆ ครับ)
ช่วงนี้ งานผมยุ่งๆๆ อยู่ อีกไม่เกิม 2 วันถ้ายังไม่ได้ เดียวมาช่วยตอบ นั้นรบกวนคุณแยกส่วน ของ Multi-Checkbox มาเป้น app เล็กๆๆ (แบบรันได้ นะ) เดียวผมช่วยแก้ให้ ส่งเข้า android.somkid@gmail.com
^^
หรือถ้า ( simple_list_item_multiple_choice.xml )มันมีปัญหาจริง อันนีผมก็ไม่รู้เหมือนกัน นะ)คุณก็สร้าง layout item(layout ของแต่ละ item โดยสร้าง class XXX Extend Adapter {
@Override // เปลียม layout item ตรงนี้นะครับ
public View getView(int position, View convertView, ViewGroup parent){
View view = mInflater.inflate(R.layout.my_list_custom_row( layout ของเรา), parent, false);
/********* กำหนดของ sub item { คือ อะไรที่อยู่ใน layout ของ ลอง set ค่าอะไรให้มันก็ได้ ลองๆๆ ดู ูู^^} **********/
}
})
แล้วก็ เราต้อง กำหนดให้ listview ของเราเป็น CHOICE_MODE_MULTIPLE โดย
ListView( listview ของเรานะ).setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
เส็จ เราจะรู้ได้ไง ว่าเราเลือก item อันไหนบ้าง
โดยใช้
int len = listView.getCount();
SparseBooleanArray checked = listView.getCheckedItemPositions();
for (int i = 0; i < len; i++) if (checked.get(i)) { String item = cont_list.get(i); /* do whatever you want with the checked item */ } ประมาณนี้และครับ ููู ^^
ขอบคุณมากครับ จะลองทำดูได้ผลอย่างไรจะมาแจ้งให้ทราบครับ