ฉันชอบให้ UI ของฉันใช้งานง่าย แต่ละหน้าจอควรจะนำทางผู้ใช้ไปยังขั้นตอนต่อไปในแอพอย่างเป็นธรรมชาติและสงบเสงี่ยม นอกจากนั้นฉันพยายามทำให้สิ่งต่างๆสับสนและสับสนให้มากที่สุด
ผมล้อเล่น :-)
ฉันมีสามTableRow
วินาทีแต่ละตัวมีตัวควบคุม EditText แบบอ่านอย่างเดียวและไม่โฟกัสแล้วกดปุ่มทางขวา แต่ละปุ่มเริ่มกิจกรรมเดียวกัน แต่มีอาร์กิวเมนต์ต่างกัน ผู้ใช้ทำการเลือกที่นั่นและกิจกรรมย่อยจะเสร็จสิ้นโดยเติมข้อมูลที่เหมาะสมEditText
กับการเลือกของผู้ใช้
เป็นกลไกค่าเรียงซ้อนแบบคลาสสิก การเลือกแต่ละรายการจะ จำกัด ตัวเลือกที่มีอยู่สำหรับการเลือกถัดไป ฯลฯ ดังนั้นฉันจึงปิดการใช้งานการควบคุมทั้งสองในแต่ละแถวถัดไปจนกว่า EditText ในแถวปัจจุบันจะมีค่า
ฉันต้องทำอย่างใดอย่างหนึ่งในสองสิ่งตามลำดับความต้องการนี้:
- เมื่อคลิกปุ่มให้ลบโฟกัสทันทีโดยไม่ต้องตั้งโฟกัสไปที่ปุ่มอื่น
- ตั้งโฟกัสไปที่ปุ่มแรกเมื่อเริ่มกิจกรรม
ปัญหาปรากฏขึ้นหลังจากส่งคืนกิจกรรมย่อย ปุ่มที่คลิกจะยังคงโฟกัส
Re: # 1 ด้านบน - ดูเหมือนจะไม่มีremoveFocus()
วิธีการหรือสิ่งที่คล้ายกัน
Re: # 2 ข้างต้น - ฉันสามารถใช้requestFocus()
เพื่อมุ่งเน้นชุดปุ่มบนแถวถัดไปและผลงานว่าหลังจากที่ผลตอบแทนย่อยกิจกรรม onCreate()
แต่ด้วยเหตุผลบางอย่างมันไม่ได้ทำงานในกิจกรรมของผู้ปกครอง
ฉันต้องการความสอดคล้องของ UI ในทิศทางใดทิศทางหนึ่ง - ไม่มีปุ่มใดที่มีโฟกัสหลังจากกิจกรรมย่อยเสร็จสิ้นหรือแต่ละปุ่มได้รับโฟกัสขึ้นอยู่กับตำแหน่งของมันในโฟลว์ลอจิกรวมถึงปุ่มที่ใช้งานแรก (และเท่านั้น) ก่อนการเลือก