iOS 14 ตั้งค่าเมนู UIBarButttonItem ก่อนที่จะเปิด
เนื่องจาก iOS14 เสนอวิธีง่ายๆในการตั้งค่าเมนูบนUIBarButtonItem
นี้ฉันสงสัยว่าฉันพลาดที่ไม่มีวิธีง่ายๆในการตั้งค่ารายการเนื่องจากอาจขึ้นอยู่กับบริบทปัจจุบัน
ฉันเห็นว่ามีUIDeferredMenuElement
แต่ดูเหมือนจะไม่เป็นกรณีการใช้งานที่ดีสำหรับมัน?
นอกจากนี้ฉันเห็นว่ามีprimaryAction
แต่ดูเหมือนจะไม่มีวิธีที่น่าสนใจในการเรียกเมนูจากที่นั่น
และตัวเลือกที่สามดูเหมือนจะสับเปลี่ยนเมนูในการเปลี่ยนแปลงแต่ละครั้งที่อาจส่งผลกระทบ แต่ดูเหมือนจะไม่ใช่ความคิดที่ดี
ฉันคิดว่ามีบางอย่างที่ฉันพลาดไป
คำตอบ
โดยทั่วไปสำหรับรายการปุ่มแถบธรรมดาไม่มีข้อกำหนดดังกล่าว UIControl เช่น UIButton มีเหตุการณ์.menuActionTriggered
และในขณะนั้นเป็นเรื่องที่สมเหตุสมผลในการสร้างและกำหนดเมนูให้กับตัวควบคุมดังนั้นการใช้เมนูไดนามิกที่สร้างขึ้นในทันทีก่อนที่เมนูจะปรากฏขึ้น
แต่คุณไม่สามารถทำได้ด้วยรายการปุ่มแถบ - เว้นแต่ว่าจะเป็นรายการปุ่มแถบมุมมองที่กำหนดเองที่มี UIButton อยู่
สิ่งที่คุณต้องทำคือดูสภาพแวดล้อมผ่านกลไกอื่น ๆและเพียงแค่เปลี่ยนเมนูของปุ่มแถบทุกครั้งที่เงื่อนไขเปลี่ยนไป ฟังดูเหมือนเจ็บก้น แต่อาจเป็นทางเลือกเดียวของคุณ (ฉันเข้าใจว่านั่นคือสิ่งที่คุณหมายถึงเมื่อคุณพูดว่า "และดูเหมือนว่าตัวเลือกที่สามจะสับเปลี่ยนเมนูในการเปลี่ยนแปลงแต่ละครั้งที่อาจส่งผลกระทบ แต่ดูเหมือนจะไม่ใช่ความคิดที่ดี")
ฉันคิดว่าสิ่งที่คุณขอนั้นสมเหตุสมผลและดูเหมือนโง่ ๆ ที่ไม่มีข้อกำหนดสำหรับมัน หากคุณมีกรณีการใช้งานที่ดีฉันขอแนะนำให้ยื่นคำขอการปรับปรุงกับ Apple