มุมมองการเลื่อนการ์ด

เพิ่มใน API ระดับ XE12 แล้ว

View ที่แสดงมุมมองเด็กที่เลื่อนในแนวนอน ซึ่งเรียกว่าการ์ด

บัตรมาจาก CardScrollAdapter ที่เชื่อมโยงกับ CardScrollView การ์ดแต่ละใบแสดงถึงรายการ Object หนึ่งๆ เป็นภาพ

โปรดดู ใช้การ์ดเลื่อนในกิจกรรมเพื่อดูข้อมูลเพิ่มเติม

การใช้งานทั่วไป

  1. สร้างชุดการ์ดโดยใช้ลำดับชั้นมุมมองมาตรฐานหรือคลาส CardBuilder
  2. ใช้ CardScrollAdapter เพื่อจัดหาชุดการ์ดให้กับ CardScrollView การ์ดแต่ละใบจะมีตัวระบุ Object และ แสดงถึง Object รายการหนึ่ง
  3. ตั้งค่ามุมมองเนื้อหาของกิจกรรมเป็น CardScrollView หรือใช้ CardScrollViewในเลย์เอาต์

การจัดการการเลื่อนและการโต้ตอบ

CardScrollView แจ้งให้คุณทราบด้วยอินเทอร์เฟซ Listener ต่อไปนี้ที่ รับค่าจาก AdapterView:

  • AdapterView.OnItemSelectedListener - เลือก 1 รายการ หลังจากที่ผู้ใช้เลื่อนดูรายการเสร็จแล้วและตกลงกันที่รายการ
  • AdapterView.OnItemClickListener - คลิกรายการเมื่อ ผู้ใช้แตะและปล่อยรายการที่เลือกไว้
  • AdapterView.OnItemLongClickListener) - 1 รายการ คลิกยาวเมื่อผู้ใช้แตะ ค้างไว้ และปล่อยนิ้วที่รายการ เลือกไว้

ชั้นเรียนที่ซ้อนกัน
enum CardScrollView.Animation กำหนดประเภทภาพเคลื่อนไหวที่ใช้เพื่อไปยัง แทรก หรือลบการ์ด
ค่าคงที่ที่รับช่วงมา
ช่องที่รับช่วงมา
ผู้รับเหมาก่อสร้าง
CardScrollView(บริบท บริบท)
CardScrollView(บริบทบริบท, แอตทริบิวต์ AttributeSet)
CardScrollView(บริบทบริบท, แอตทริบิวต์ AttributeSet, int defStyle)
วิธีการสาธารณะ
เป็นโมฆะ
boolean
animate(ตำแหน่ง int, CardScrollView.Animation creatorType)
เป็นโมฆะ
CardScrollAdapter
ยาว
int
ดู
boolean
boolean
boolean
onKeyDown(int keyCode, เหตุการณ์ KeyEvent)
เป็นโมฆะ
onWindowFocusChanged(บูลีน hasWindowFocus)
เป็นโมฆะ
setAdapter(อะแดปเตอร์ CardScrollAdapter)
เป็นโมฆะ
setEmptyView(View emptyView)
เป็นโมฆะ
setHorizontalScrollBarEnabled(เปิดใช้บูลีน)
เป็นโมฆะ
setSelection(ตำแหน่งint)
เมธอดที่มีการป้องกัน
boolean
boolean
dispatchGenericFocusedEvent(เหตุการณ์ MotionEvent)
เป็นโมฆะ
เป็นโมฆะ
onLayout(บูลีนเปลี่ยนแปลง, int left, int top, int right, int bottom)
เป็นโมฆะ
onVisibilityChanged(View ที่เปลี่ยนมุมมอง, การแสดงผล int)
เมธอดที่รับมา

ผู้รับเหมาก่อสร้าง

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ CardScrollView (บริบท)

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ CardScrollView (บริบทบริบท, AttributeSetแอตทริบิวต์)

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ CardScrollView (บริบทบริบท, AttributeSet attrs, int defStyle)

วิธีการสาธารณะ

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ เป็นโมฆะ เปิดใช้งาน ()

บอกให้ CardScrollView เปิดใช้งานและพร้อมแสดงผล สิ่งที่ต้องทำ(ajcbik): ตรวจสอบว่าเราสามารถแทนที่ [de]เปิดใช้งานด้วยกิจกรรมโฟกัสได้หรือไม่

เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ บูลีน เคลื่อนไหว (ตำแหน่ง int, CardScrollView.AnimationationType)

ภาพเคลื่อนไหวของการ์ดในตำแหน่งที่ระบุ โดย animationType ควรเป็นแบบใดแบบหนึ่งต่อไปนี้

  • NAVIGATION: ย้ายไปยังการ์ดที่ระบุจากตำแหน่งใดก็ได้ การไปยังส่วนต่างๆ ตามปกติ
  • INSERTION: ย้ายไปยังการ์ดที่ระบุ ซึ่งปรากฏให้เห็นหลังการแทรก
  • DELETION: บัตรที่ระบุจะหายไปจากมุมมอง (หากเลือกไว้) หลังจากลบแล้ว
ภาพเคลื่อนไหวจะถูกข้ามหากตัวเลื่อนถูกปิดใช้งาน ถ้าภาพเคลื่อนไหวอัตโนมัติก่อนหน้ามีการ ยังคงดำเนินอยู่ หรือหากตำแหน่งไม่ถูกต้อง ภาพเคลื่อนไหวของการลบจะเกิดขึ้นเฉพาะเมื่อมีการลบ เลือกบัตร ไว้ในขณะนี้

ควรใช้ภาพเคลื่อนไหวการแทรกและการลบหลังจากเปลี่ยนแปลงที่สอดคล้องกัน ใน CardScrollAdapter ภาพเคลื่อนไหวจะเรียก notifyDataSetChanged() ใน อะแดปเตอร์ในเวลาที่เหมาะสมในภาพเคลื่อนไหว แม้ว่าจะมีการข้ามหรือปิดการทำงานก่อนกำหนด

ตัวอย่างการใช้งาน:

 .... insert card at p-th position in adapter ....
 animate(p, INSERTION);    // calls notifyDataSetChanged() on adapter
 

พารามิเตอร์
position ของการ์ดที่เกี่ยวข้องในภาพเคลื่อนไหว
animationType ควบคุมประเภทของภาพเคลื่อนไหวที่จะใช้
การคืนสินค้า
  • ภาพเคลื่อนไหวเริ่มเล่นหรือไม่
เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ เป็นโมฆะ ปิดใช้งาน ()

บอกให้ CardScrollView ปิดใช้งาน จะไม่แสดงจนกว่าจะ activate() จะถูกเรียกอีกครั้ง

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ CardScrollAdapter getAdapter ()

สาธารณะ ยาว getSelectedItemId ()

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ Int getSelectedItemPosition ()

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ ดู getSelectedView ()

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ บูลีน isActivated ()

สาธารณะ บูลีน isHorizontalScrollBarEnabled ()

สาธารณะ บูลีน onKeyDown (int keyCode, KeyEvent)

สาธารณะ เป็นโมฆะ onWindowFocusChanged (บูลีน hasWindowFocus)

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ เป็นโมฆะ setAdapter (อะแดปเตอร์ CardScrollAdapter)

สาธารณะ เป็นโมฆะ setEmptyView (ดู emptyView)

setEmptyView(View) ไม่รองรับ CardScrollView

หากต้องการภาพเคลื่อนไหวและลักษณะการทำงานที่แตะได้ที่เหมาะสม ให้ใช้อะแดปเตอร์ สำหรับชุดข้อมูลที่ว่างเปล่าแทน

สาธารณะ เป็นโมฆะ setHorizontalScrollBarEnabled (เปิดใช้บูลีน)

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ เป็นโมฆะ setSelection (ตำแหน่ง int)

เมธอดที่มีการป้องกัน

ป้องกัน บูลีน awakenScrollBars ()

เปิดใช้งานแถบเลื่อนแนวนอน หากมี

ป้องกัน บูลีน dispatchGenericFocusedEvent (เหตุการณ์ MotionEvent)

ป้องกัน เป็นโมฆะ initializeScrollbars (TypedArray a)

เพิ่มใน API ระดับ XE12 แล้ว

ป้องกัน เป็นโมฆะ onLayout (บูลีนเปลี่ยนแปลง, int left, int top, int right, int bottom)

ป้องกัน เป็นโมฆะ onVisibilityChanged (มุมมองเปลี่ยนแปลงมุมมอง, การมองเห็นภายใน)