ใช้การเปลี่ยนฉากเพื่อกำหนดการเปลี่ยนแปลงระหว่างแผง คุณกำหนดการเปลี่ยนภาพ เพื่ออธิบายวิธีและเวลาที่จะทำการเปลี่ยนแปลงระหว่างแผง 2 รูปแบบได้ คุณ กำหนดรายการการเปลี่ยนฉากสำหรับแต่ละแผงได้
ใช้<Transitions>
แท็ก XML เป็นคอนเทนเนอร์สำหรับคำจำกัดความอย่างน้อย 1 รายการในกำหนดค่าของ <TaskPanel>
หรือ <DecorPanel>
รายการเดียว<Transition>
คุณสามารถใช้แท็กนี้เพื่อกำหนดชุดกฎภาพเคลื่อนไหวเพื่อควบคุมเวลาและวิธีที่แผงควรเปลี่ยนสถานะภาพจากตัวแปรหนึ่งไปยังอีกตัวแปรหนึ่ง
แอตทริบิวต์ XML
แท็ก <Transitions>
สามารถกำหนดค่าเริ่มต้นสำหรับองค์ประกอบย่อย <Transition>
ต่อไปนี้ได้
แอตทริบิวต์ | สถานะ | คำอธิบาย |
---|---|---|
<defaultDuration> |
ไม่บังคับ | ระบุระยะเวลาเริ่มต้นเป็นมิลลิวินาทีที่จะใช้กับ องค์ประกอบ ระบบจะใช้ค่าคงที่ |
defaultInterpolator |
ไม่บังคับ | อ้างอิงรหัสทรัพยากร XML ของตัวแทรก Android เช่น หากไม่ได้ระบุตัวประมาณค่าเริ่มต้น ระบบมักจะใช้ |
องค์ประกอบย่อย XML
องค์ประกอบย่อยของ <Transitions>
คือ <Transition>
ซึ่งเป็นองค์ประกอบหลัก
ที่ใช้กำหนดเส้นทางการเคลื่อนไหวที่เฉพาะเจาะจงระหว่างตัวแปร PanelState
คุณซ้อนองค์ประกอบ <Transition>
หลายรายการไว้ภายในบล็อก <Transitions>
เดียวได้
โค้ดตัวอย่าง
ในตัวอย่างนี้ fromVariant
เป็นส่วนที่ไม่บังคับ หากไม่ได้กำหนดไว้ ระบบจะใช้ตัวแปรปัจจุบัน หากกำหนด fromVariant
ระบบจะใช้การเปลี่ยนก็ต่อเมื่อ
พารามิเตอร์ทั้งหมดตรงกันเท่านั้น พารามิเตอร์จะระบุไว้ในเหตุการณ์และ
fromVariant
<Transitions defaultDuration="400"
defaultInterpolator="@android:anim/linear_interpolator">
<Transition fromVariant="closed_app"
toVariant="opened_app">
<Event id="app_opened" panel="application_panel" />
</Transition>
</Transitions>
ทรานซิชัน
การเปลี่ยนฉากอธิบายวิธีเปลี่ยนภาพเคลื่อนไหวของสถานะภาพระหว่างแผง 2 รูปแบบ การเปลี่ยนเส้นทางจะระบุเส้นทางจากตัวแปรหนึ่งไปยังอีกตัวแปรหนึ่ง โดยการเปลี่ยนฉากจะระบุรายละเอียดต่างๆ เช่น ภาพเคลื่อนไหวที่จะใช้และ เหตุการณ์ที่จำเป็นในการทริกเกอร์ภาพเคลื่อนไหว
สําหรับแผง การเปลี่ยนฉากสามารถกําหนดภาพเคลื่อนไหวสําหรับพร็อพเพอร์ตี้ เช่น ขอบเขต ระดับการเข้าถึง และอัลฟ่า หากไม่ได้ระบุภาพเคลื่อนไหวที่กำหนดเอง ระบบจะใช้ภาพเคลื่อนไหวเริ่มต้น
แอตทริบิวต์ XML
แท็ก <Transition>
ใช้แอตทริบิวต์หลายรายการเพื่อกำหนดลักษณะของ
ภาพเคลื่อนไหวและเงื่อนไขที่จะทำให้เกิดภาพเคลื่อนไหวนั้น
องค์ประกอบย่อย XML
<Event>
กำหนดพร็อพเพอร์ตี้ของเหตุการณ์ที่ทําให้เกิดการเปลี่ยนฉาก
แอตทริบิวต์ | สถานะ | คำอธิบาย |
---|---|---|
<id> |
บังคับ | ตัวระบุเฉพาะของเหตุการณ์เพื่อเปิดใช้งานทริกเกอร์ |
<panelId> |
ไม่บังคับ | ตัวระบุเฉพาะของแผงที่เชื่อมโยงกับกิจกรรม |
componentName |
ไม่บังคับ | ชื่อคอมโพเนนต์ที่เชื่อมโยงกับเหตุการณ์นี้ |
packageName |
ไม่บังคับ | ชื่อแพ็กเกจที่เชื่อมโยงกับเหตุการณ์ |
โค้ดตัวอย่าง
<Transitions defaultDuration="400"
defaultInterpolator="@android:anim/accelerate_interpolator">
<!-- A transition from 'closed_app' to 'opened_app' variant, triggered by 'open_app_event' -->
<Transition fromVariant="closed_app"
toVariant="opened_app">
<Event id="app_opened" panel="application_panel" />
<Transition>
<!-- A transition from 'opened_app' to 'closed_app' variant, using a custom animator -->
<Transition fromVariant="opened_app"
toVariant="closed_app"
animator="@animator/close_app">
<Event id="_System_PanelEmptyEvent"
panelId="application_panel" />
<Transition>
</Transitions>