คลาส CardBuilder
ช่วยสร้างการ์ดธีมกระจกที่มีเลย์เอาต์แบบต่างๆ
ดูการสร้างการ์ดสไตล์ Glass สำหรับข้อมูลเพิ่มเติมและโค้ดตัวอย่าง
การใช้งานทั่วไป
- สร้างออบเจ็กต์
CardBuilder
และส่งCardBuilder.Layout
ที่ต้องการไปยังเครื่องมือสร้าง - ตั้งค่าเนื้อหาในการ์ดด้วยกลุ่มวิธีการ
add/set*
- รับ
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 |
addImage(วาดเขียนได้ imageDrawable)
|
||||||||||
CardBuilder | |||||||||||
CardBuilder |
addImage(int imageId)
|
||||||||||
void | |||||||||||
int | |||||||||||
RemoteViews | |||||||||||
ดู | |||||||||||
ดู |
getView()
|
||||||||||
int แบบคงที่ | |||||||||||
CardBuilder |
setAttributionIcon(บิตแมป iconBitmap)
|
||||||||||
CardBuilder |
setAttributionIcon(Drawable iconDrawable)
|
||||||||||
CardBuilder |
setAttributionIcon(int iconId)
|
||||||||||
CardBuilder |
setEmbeddedLayout(int formatResId)
|
||||||||||
CardBuilder |
setFootnote(เชิงอรรถ CharSequence)
|
||||||||||
CardBuilder |
setFootnote(int footnoteId)
|
||||||||||
CardBuilder |
setHeading(ส่วนหัว CharSequence)
|
||||||||||
CardBuilder |
setHeading(รหัสส่วนหัว)
|
||||||||||
CardBuilder | |||||||||||
CardBuilder | |||||||||||
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(แสดงบูลีน)
|
เมธอดที่รับมา | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
ผู้รับเหมาก่อสร้าง
สาธารณะ CardBuilder (บริบทบริบท, เลย์เอาต์ CardBuilder.Layout)
สร้าง CardBuilder
ใหม่
พารามิเตอร์
บริบท | Context ที่เครื่องมือสร้างจะใช้ในการสร้างข้อมูลพร็อพเพอร์ตี้ |
---|---|
เลย์เอาต์ | เลย์เอาต์ที่ต้องการสำหรับการ์ด |
วิธีการสาธารณะ
สาธารณะ CardBuilder addImage (Drawable imageDrawable)
เพิ่มรูปภาพ ซึ่งระบุเป็น Drawable
ลงในการ์ด
วิธีนี้ใช้กับการ์ดที่แปลงเป็นมุมมองโดยใช้ getView()
เท่านั้น
RemoteViews
สร้างโดย CardBuilder
รองรับเฉพาะ Bitmap
และรูปภาพที่อิงตามทรัพยากร ไม่รองรับรูปภาพ Drawable
รูปใน RemoteViews
พารามิเตอร์
imageDrawable | รูปภาพ Drawable รูปที่จะเพิ่ม |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder addImage (Bitmap imageBitmap)
เพิ่มรูปภาพ ซึ่งระบุเป็น Bitmap
ลงในการ์ด
พารามิเตอร์
imageBitmap | รูปภาพ Bitmap รูปที่จะเพิ่ม |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder addImage (int imageId)
เพิ่มรูปภาพที่ระบุว่าเป็นทรัพยากรที่ถอนออกได้ลงในการ์ด
พารามิเตอร์
imageId | รหัสทรัพยากรของรูปภาพที่จะเพิ่ม |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ void clearImages ()
ล้างรูปภาพทั้งหมดที่เพิ่มไปยังการ์ดก่อนหน้านี้
สาธารณะ int getItemViewType ()
แสดงประเภทมุมมองของการ์ดนี้
มีประโยชน์เมื่อใช้ร่วมกับอะแดปเตอร์
ดูgetItemViewType(int)
สาธารณะ RemoteViews getRemoteViews ()
แสดงการแทนค่า RemoteViews
ของการ์ดนี้
สาธารณะ ดู getView (ดู conversionView, ViewGroup ระดับบนสุด)
แสดงการแทนค่า View
ของการ์ดนี้
มีประโยชน์เมื่อใช้ร่วมกับอะแดปเตอร์
ดูgetView(int, View, ViewGroup)
พารามิเตอร์
convertView | ข้อมูลพร็อพเพอร์ตี้เก่าที่จะนำกลับมาใช้ใหม่หากเป็นไปได้ อาจเป็น null
หมายเหตุ: หากข้อมูลพร็อพเพอร์ตี้นี้มีประเภทที่ไม่ถูกต้อง วิธีนี้จะสร้างข้อมูลพร็อพเพอร์ตี้ใหม่ |
---|---|
parent | ที่จะแนบข้อมูลพร็อพเพอร์ตี้นี้ไปในที่สุด อาจเป็น null
|
สาธารณะ คงที่ int getViewTypeCount ()
แสดงผลจำนวนมุมมองทั้งหมดที่การ์ดใช้ได้
มีประโยชน์เมื่อใช้ร่วมกับอะแดปเตอร์
ดูgetViewTypeCount()
สาธารณะ CardBuilder setAttributionIcon (Bitmap iconBitmap)
ตั้งค่าไอคอนระบุแหล่งที่มาสำหรับการ์ดโดยใช้ Bitmap
พารามิเตอร์
iconBitmap | Bitmap เพื่อใช้เป็นไอคอนระบุแหล่งที่มา |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setAttributionIcon (Drawable iconDrawable)
ตั้งค่าไอคอนระบุแหล่งที่มาสำหรับการ์ดโดยใช้ Drawable
วิธีนี้ใช้กับการ์ดที่แปลงเป็นมุมมองโดยใช้ getView()
เท่านั้น
RemoteViews
สร้างโดย CardBuilder
รองรับเฉพาะ Bitmap
และรูปภาพที่อิงตามทรัพยากร ไม่รองรับรูปภาพ Drawable
รูปใน RemoteViews
พารามิเตอร์
iconDrawable | Drawable เพื่อใช้เป็นไอคอนระบุแหล่งที่มา |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setAttributionIcon (int iconId)
ตั้งค่าไอคอนระบุแหล่งที่มาสำหรับการ์ดโดยใช้ทรัพยากรที่ถอนออกได้
พารามิเตอร์
iconId | รหัสทรัพยากรที่จะใช้เป็นไอคอนการระบุแหล่งที่มา |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setEmbeddedLayout (intformattedResId)
ตั้งค่ารหัสทรัพยากรของเลย์เอาต์ที่จะฝังในการ์ด
พารามิเตอร์
layoutResId | รหัสทรัพยากรของเลย์เอาต์ที่จะฝังในการ์ด |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setFootnote (CharSequence เชิงอรรถ)
ตั้งค่าข้อความเชิงอรรถสำหรับการ์ด
พารามิเตอร์
เชิงอรรถ | ข้อความเชิงอรรถของการ์ดนี้ |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setFootnote (int footnoteId)
ตั้งค่าข้อความเชิงอรรถสำหรับการ์ดโดยใช้ทรัพยากรสตริง
พารามิเตอร์
footnoteId | รหัสทรัพยากรข้อความเชิงอรรถของการ์ดนี้ |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setHeading (CharSequence heading)
ตั้งค่าข้อความหัวข้อสำหรับการ์ด
พารามิเตอร์
ทิศทาง | ข้อความส่วนหัวของการ์ดนี้ |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setHeading (int headingId)
ตั้งค่าข้อความส่วนหัวสำหรับการ์ดโดยใช้ทรัพยากรสตริง
พารามิเตอร์
headingId | รหัสทรัพยากรข้อความส่วนหัวสำหรับการ์ดนี้ |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setIcon (Bitmap iconBitmap)
ตั้งค่าไอคอนของการ์ดโดยใช้ Bitmap
พารามิเตอร์
iconBitmap | Bitmap ที่จะใช้เป็นไอคอน |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setIcon (Drawable iconDrawable)
ตั้งค่าไอคอนของการ์ดโดยใช้ Drawable
วิธีนี้ใช้กับการ์ดที่แปลงเป็นมุมมองโดยใช้ getView()
เท่านั้น
RemoteViews
สร้างโดย CardBuilder
รองรับเฉพาะ Bitmap
และรูปภาพที่อิงตามทรัพยากร ไม่รองรับรูปภาพ Drawable
รูปใน RemoteViews
พารามิเตอร์
iconDrawable | Drawable ที่จะใช้เป็นไอคอน |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setIcon (int iconId)
ตั้งค่าไอคอนสำหรับการ์ดโดยใช้ทรัพยากรที่ถอนออกได้
พารามิเตอร์
iconId | รหัสทรัพยากรที่จะใช้เป็นไอคอน |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setSubheading (CharSequence ส่วนหัวย่อย)
ตั้งค่าข้อความส่วนหัวย่อยสำหรับการ์ด
พารามิเตอร์
ส่วนหัวย่อย | ข้อความส่วนหัวย่อยของการ์ดนี้ |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setSubheading (int subheadingId)
ตั้งค่าข้อความส่วนหัวย่อยสำหรับการ์ดโดยใช้ทรัพยากรสตริง
พารามิเตอร์
subheadingId | รหัสทรัพยากรข้อความส่วนหัวย่อยสำหรับการ์ดนี้ |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setText (int textId)
ตั้งค่าข้อความหลักสำหรับการ์ดโดยใช้ทรัพยากรสตริง
พารามิเตอร์
textId | รหัสทรัพยากรข้อความหลักของการ์ดนี้ |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setText (CharSequence text)
ตั้งค่าข้อความหลักสำหรับการ์ด
พารามิเตอร์
ข้อความ | ข้อความหลักของการ์ดนี้ |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setTimestamp (CharSequence timestamp)
ตั้งค่าข้อความที่มีการประทับเวลาสำหรับการ์ด
พารามิเตอร์
การประทับเวลา | ข้อความการประทับเวลาของการ์ดนี้ |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder setTimestamp (int timestampId)
ตั้งค่าข้อความที่มีการประทับเวลาสำหรับการ์ดโดยใช้ทรัพยากรสตริง
พารามิเตอร์
timestampId | รหัสทรัพยากรข้อความการประทับเวลาของการ์ดนี้ |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก
สาธารณะ CardBuilder showStackIndicator (boolean visible)
แสดงตัวบ่งชี้หาก visible
เป็นจริงว่าการ์ดนี้แสดงกลุ่มการ์ด ไม่ใช่การ์ดเดี่ยว
พารามิเตอร์
มองเห็นได้ | "จริง" เพื่อแสดงตัวบ่งชี้สแต็ก หรือ "เท็จ" เพื่อซ่อน |
---|
การคืนสินค้า
- ออบเจ็กต์นี้สำหรับเชนการเรียก