เครื่องมือสร้างการ์ด

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

คลาส CardBuilder ช่วยสร้างการ์ดธีมกระจกที่มีเลย์เอาต์แบบต่างๆ

ดูการสร้างการ์ดสไตล์ Glass สำหรับข้อมูลเพิ่มเติมและโค้ดตัวอย่าง

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

  1. สร้างออบเจ็กต์ CardBuilder และส่ง CardBuilder.Layout ที่ต้องการไปยังเครื่องมือสร้าง
  2. ตั้งค่าเนื้อหาในการ์ดด้วยกลุ่มวิธีการ add/set*
  3. รับ View โดยการเรียกใช้ getView() หรือได้รับออบเจ็กต์ RemoteViews ด้วย getRemoteViews()

หมายเหตุการรีไซเคิลสำหรับเลย์เอาต์ที่ฝัง

เมื่อใช้ EMBED_INSIDE CardBuilder จะไม่ได้สร้างความแตกต่างระหว่างเลย์เอาต์ที่ฝังต่างๆ เมื่อรีไซเคิลมุมมอง หากคุณมีอินสแตนซ์ CardBuilder 2 รายการที่มี EMBED_INSIDE แต่รายการหนึ่งมีเลย์เอาต์ A และอีกรายการมีเลย์เอาต์ B CardBuilder จะถือว่าอินสแตนซ์เหล่านั้นเหมือนกัน

หากลักษณะการทำงานนี้ไม่เป็นที่ต้องการ (เช่น เมื่อใช้ CardScrollAdapter กับเลย์เอาต์แบบฝังที่แตกต่างกัน) คุณต้องแยกความแตกต่างโดยแสดงผลมุมมองประเภทต่างๆ จาก getItemViewType(int) เพื่อให้ Recycle ส่งเฉพาะ convertView ที่มีเลย์เอาต์ที่ซ้อนกันตามที่คุณคาดหวังสำหรับรายการที่เจาะจงเท่านั้น

หากต้องการรองรับการ์ดที่มีเลย์เอาต์แบบฝังหลายรายการควบคู่ไปกับเลย์เอาต์ในตัว เราขอแนะนำให้คุณแสดงผลประเภทมุมมองซึ่งมีหมายเลข getViewTypeCount(), CardBuilder.getViewTypeCount() + 1 และอื่นๆ

ชั้นเรียนที่ซ้อนกัน
enum CardBuilder.Layout กำหนดเลย์เอาต์ภาพสำหรับการ์ด
ผู้รับเหมาก่อสร้าง
CardBuilder(บริบทบริบท, เลย์เอาต์ CardBuilder.Layout)
วิธีการสาธารณะ
CardBuilder
CardBuilder
CardBuilder
addImage(int imageId)
void
int
RemoteViews
ดู
getView(View conversionView, ระดับบนสุด ViewGroup)
ดู
int แบบคงที่
CardBuilder
CardBuilder
CardBuilder
setAttributionIcon(int iconId)
CardBuilder
setEmbeddedLayout(int formatResId)
CardBuilder
setFootnote(เชิงอรรถ CharSequence)
CardBuilder
setFootnote(int footnoteId)
CardBuilder
setHeading(ส่วนหัว CharSequence)
CardBuilder
setHeading(รหัสส่วนหัว)
CardBuilder
CardBuilder
setIcon(Drawable iconDrawable)
CardBuilder
setIcon(int iconId)
CardBuilder
setSubheading(ส่วนหัวย่อย CharSequence)
CardBuilder
setSubheading(int subheadingId)
CardBuilder
setText(int textId)
CardBuilder
setText(ข้อความ CharSequence)
CardBuilder
setTimestamp(การประทับเวลา CharSequence)
CardBuilder
setTimestamp(int timestampId)
CardBuilder
showStackIndicator(แสดงบูลีน)
เมธอดที่รับมา

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

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

สาธารณะ CardBuilder (บริบทบริบท, เลย์เอาต์ CardBuilder.Layout)

สร้าง CardBuilder ใหม่

พารามิเตอร์
บริบท Context ที่เครื่องมือสร้างจะใช้ในการสร้างข้อมูลพร็อพเพอร์ตี้
เลย์เอาต์ เลย์เอาต์ที่ต้องการสำหรับการ์ด

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

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

สาธารณะ CardBuilder addImage (Drawable imageDrawable)

เพิ่มรูปภาพ ซึ่งระบุเป็น Drawable ลงในการ์ด

วิธีนี้ใช้กับการ์ดที่แปลงเป็นมุมมองโดยใช้ getView() เท่านั้น RemoteViews สร้างโดย CardBuilder รองรับเฉพาะ Bitmap และรูปภาพที่อิงตามทรัพยากร ไม่รองรับรูปภาพ Drawable รูปใน RemoteViews

พารามิเตอร์
imageDrawable รูปภาพ Drawable รูปที่จะเพิ่ม
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder addImage (Bitmap imageBitmap)

เพิ่มรูปภาพ ซึ่งระบุเป็น Bitmap ลงในการ์ด

พารามิเตอร์
imageBitmap รูปภาพ Bitmap รูปที่จะเพิ่ม
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder addImage (int imageId)

เพิ่มรูปภาพที่ระบุว่าเป็นทรัพยากรที่ถอนออกได้ลงในการ์ด

พารามิเตอร์
imageId รหัสทรัพยากรของรูปภาพที่จะเพิ่ม
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ void clearImages ()

ล้างรูปภาพทั้งหมดที่เพิ่มไปยังการ์ดก่อนหน้านี้

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

สาธารณะ int getItemViewType ()

แสดงประเภทมุมมองของการ์ดนี้

มีประโยชน์เมื่อใช้ร่วมกับอะแดปเตอร์ ดูgetItemViewType(int)

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

สาธารณะ RemoteViews getRemoteViews ()

แสดงการแทนค่า RemoteViews ของการ์ดนี้

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

สาธารณะ ดู getView (ดู conversionView, ViewGroup ระดับบนสุด)

แสดงการแทนค่า View ของการ์ดนี้

มีประโยชน์เมื่อใช้ร่วมกับอะแดปเตอร์ ดูgetView(int, View, ViewGroup)

พารามิเตอร์
convertView ข้อมูลพร็อพเพอร์ตี้เก่าที่จะนำกลับมาใช้ใหม่หากเป็นไปได้ อาจเป็น null หมายเหตุ: หากข้อมูลพร็อพเพอร์ตี้นี้มีประเภทที่ไม่ถูกต้อง วิธีนี้จะสร้างข้อมูลพร็อพเพอร์ตี้ใหม่
parent ที่จะแนบข้อมูลพร็อพเพอร์ตี้นี้ไปในที่สุด อาจเป็น null
เพิ่มใน API ระดับ XE21 แล้ว

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

แสดงการแทนค่า View ของการ์ดนี้

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

สาธารณะ คงที่ int getViewTypeCount ()

แสดงผลจำนวนมุมมองทั้งหมดที่การ์ดใช้ได้

มีประโยชน์เมื่อใช้ร่วมกับอะแดปเตอร์ ดูgetViewTypeCount()

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

สาธารณะ CardBuilder setAttributionIcon (Bitmap iconBitmap)

ตั้งค่าไอคอนระบุแหล่งที่มาสำหรับการ์ดโดยใช้ Bitmap

พารามิเตอร์
iconBitmap Bitmap เพื่อใช้เป็นไอคอนระบุแหล่งที่มา
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE22 แล้ว

สาธารณะ CardBuilder setAttributionIcon (Drawable iconDrawable)

ตั้งค่าไอคอนระบุแหล่งที่มาสำหรับการ์ดโดยใช้ Drawable

วิธีนี้ใช้กับการ์ดที่แปลงเป็นมุมมองโดยใช้ getView() เท่านั้น RemoteViews สร้างโดย CardBuilder รองรับเฉพาะ Bitmap และรูปภาพที่อิงตามทรัพยากร ไม่รองรับรูปภาพ Drawable รูปใน RemoteViews

พารามิเตอร์
iconDrawable Drawable เพื่อใช้เป็นไอคอนระบุแหล่งที่มา
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE22 แล้ว

สาธารณะ CardBuilder setAttributionIcon (int iconId)

ตั้งค่าไอคอนระบุแหล่งที่มาสำหรับการ์ดโดยใช้ทรัพยากรที่ถอนออกได้

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

สาธารณะ CardBuilder setEmbeddedLayout (intformattedResId)

ตั้งค่ารหัสทรัพยากรของเลย์เอาต์ที่จะฝังในการ์ด

พารามิเตอร์
layoutResId รหัสทรัพยากรของเลย์เอาต์ที่จะฝังในการ์ด
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setFootnote (CharSequence เชิงอรรถ)

ตั้งค่าข้อความเชิงอรรถสำหรับการ์ด

พารามิเตอร์
เชิงอรรถ ข้อความเชิงอรรถของการ์ดนี้
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setFootnote (int footnoteId)

ตั้งค่าข้อความเชิงอรรถสำหรับการ์ดโดยใช้ทรัพยากรสตริง

พารามิเตอร์
footnoteId รหัสทรัพยากรข้อความเชิงอรรถของการ์ดนี้
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setHeading (CharSequence heading)

ตั้งค่าข้อความหัวข้อสำหรับการ์ด

พารามิเตอร์
ทิศทาง ข้อความส่วนหัวของการ์ดนี้
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setHeading (int headingId)

ตั้งค่าข้อความส่วนหัวสำหรับการ์ดโดยใช้ทรัพยากรสตริง

พารามิเตอร์
headingId รหัสทรัพยากรข้อความส่วนหัวสำหรับการ์ดนี้
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setIcon (Bitmap iconBitmap)

ตั้งค่าไอคอนของการ์ดโดยใช้ Bitmap

พารามิเตอร์
iconBitmap Bitmap ที่จะใช้เป็นไอคอน
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setIcon (Drawable iconDrawable)

ตั้งค่าไอคอนของการ์ดโดยใช้ Drawable

วิธีนี้ใช้กับการ์ดที่แปลงเป็นมุมมองโดยใช้ getView() เท่านั้น RemoteViews สร้างโดย CardBuilder รองรับเฉพาะ Bitmap และรูปภาพที่อิงตามทรัพยากร ไม่รองรับรูปภาพ Drawable รูปใน RemoteViews

พารามิเตอร์
iconDrawable Drawable ที่จะใช้เป็นไอคอน
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setIcon (int iconId)

ตั้งค่าไอคอนสำหรับการ์ดโดยใช้ทรัพยากรที่ถอนออกได้

พารามิเตอร์
iconId รหัสทรัพยากรที่จะใช้เป็นไอคอน
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setSubheading (CharSequence ส่วนหัวย่อย)

ตั้งค่าข้อความส่วนหัวย่อยสำหรับการ์ด

พารามิเตอร์
ส่วนหัวย่อย ข้อความส่วนหัวย่อยของการ์ดนี้
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setSubheading (int subheadingId)

ตั้งค่าข้อความส่วนหัวย่อยสำหรับการ์ดโดยใช้ทรัพยากรสตริง

พารามิเตอร์
subheadingId รหัสทรัพยากรข้อความส่วนหัวย่อยสำหรับการ์ดนี้
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setText (int textId)

ตั้งค่าข้อความหลักสำหรับการ์ดโดยใช้ทรัพยากรสตริง

พารามิเตอร์
textId รหัสทรัพยากรข้อความหลักของการ์ดนี้
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setText (CharSequence text)

ตั้งค่าข้อความหลักสำหรับการ์ด

พารามิเตอร์
ข้อความ ข้อความหลักของการ์ดนี้
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setTimestamp (CharSequence timestamp)

ตั้งค่าข้อความที่มีการประทับเวลาสำหรับการ์ด

พารามิเตอร์
การประทับเวลา ข้อความการประทับเวลาของการ์ดนี้
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ CardBuilder setTimestamp (int timestampId)

ตั้งค่าข้อความที่มีการประทับเวลาสำหรับการ์ดโดยใช้ทรัพยากรสตริง

พารามิเตอร์
timestampId รหัสทรัพยากรข้อความการประทับเวลาของการ์ดนี้
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก
เพิ่มใน API ระดับ XE22 แล้ว

สาธารณะ CardBuilder showStackIndicator (boolean visible)

แสดงตัวบ่งชี้หาก visible เป็นจริงว่าการ์ดนี้แสดงกลุ่มการ์ด ไม่ใช่การ์ดเดี่ยว

พารามิเตอร์
มองเห็นได้ "จริง" เพื่อแสดงตัวบ่งชี้สแต็ก หรือ "เท็จ" เพื่อซ่อน
การคืนสินค้า
  • ออบเจ็กต์นี้สำหรับเชนการเรียก