คำถามติดแท็ก gridlayoutmanager

28
การเว้นวรรคคอลัมน์ Android Recyclerview GridLayoutManager
คุณจะตั้งระยะห่างคอลัมน์ด้วย RecyclerView โดยใช้ GridLayoutManager ได้อย่างไร การตั้งค่าระยะขอบ / ช่องว่างภายในเค้าโครงของฉันไม่มีผลใด ๆ

3
ตัวอย่างตาราง Android อย่างง่ายโดยใช้ RecyclerView พร้อม GridLayoutManager (เช่น GridView เก่า)
ฉันรู้ว่าRecyclerViewได้เข้ามาแทนที่การทำงานของเดิมและListView ฉันกำลังมองหาตัวอย่างที่พื้นฐานมากที่แสดงให้เห็นถึงการติดตั้งน้อยที่สุดโดยใช้ตารางGridView RecyclerViewฉันไม่ได้กำลังมองหาคำอธิบายสไตล์การกวดวิชาที่ยาวนานเป็นเพียงตัวอย่างเล็กน้อย ฉันนึกภาพกริดที่ง่ายที่สุดที่เลียนแบบ GridView แบบเก่าจะประกอบด้วยคุณสมบัติดังต่อไปนี้: หลายเซลล์ต่อแถว มุมมองเดียวในแต่ละเซลล์ ตอบสนองต่อกิจกรรมคลิก

12
RecyclerView GridLayoutManager: วิธีตรวจจับการนับสแปนอัตโนมัติ
การใช้ GridLayoutManager ใหม่: https://developer.android.com/reference/android/support/v7/widget/GridLayoutManager.html ต้องใช้การนับช่วงที่ชัดเจนดังนั้นปัญหาจึงกลายเป็น: คุณจะรู้ได้อย่างไรว่า "ช่วง" พอดีต่อแถว? นี่คือเส้นตารางหลังจากทั้งหมด ควรมีระยะห่างมากที่สุดเท่าที่ RecyclerView จะใส่ได้ตามความกว้างที่วัดได้ เมื่อใช้แบบเก่าGridViewคุณจะตั้งค่าคุณสมบัติ "columnWidth" และจะตรวจหาจำนวนคอลัมน์ที่พอดีโดยอัตโนมัติ นี่คือสิ่งที่ฉันต้องการทำซ้ำสำหรับ RecyclerView: เพิ่ม OnLayoutChangeListener บนไฟล์ RecyclerView ในการเรียกกลับนี้ขยาย 'รายการตาราง' รายการเดียวแล้ววัดผล spanCount = รีไซเคิลViewWidth / singleItemWidth; ดูเหมือนว่าจะเป็นพฤติกรรมทั่วไปดังนั้นมีวิธีที่ง่ายกว่าที่ฉันไม่เห็นหรือไม่?

3
ตั้งค่าช่วงสำหรับรายการใน GridLayoutManager โดยใช้ SpanSizeLookup
ฉันต้องการใช้เค้าโครงแบบตารางที่มีส่วนหัวของส่วน ลองนึกถึงhttps://github.com/TonicArtos/StickyGridHeaders ตอนนี้ฉันทำอะไร: mRecyclerView = (RecyclerView) view.findViewById(R.id.grid); mLayoutManager = new GridLayoutManager(getActivity(), 2); mLayoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() { @Override public int getSpanSize(int position) { switch(mAdapter.getItemViewType(position)){ case MyAdapter.TYPE_HEADER: return 1; case MyAdapter.TYPE_ITEM: return 2; default: return -1; } } }); mRecyclerView.setLayoutManager(mLayoutManager); ตอนนี้ทั้งรายการปกติและส่วนหัวมีขนาดช่วง 1 ฉันจะแก้ปัญหานี้ได้อย่างไร?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.