บทนำ:
รูปแบบ "การสอน Fragments" พื้นฐานมีลักษณะดังนี้:
- บนแท็บเล็ตมีรายการทางด้านซ้ายรายละเอียดด้านขวา
- ทั้งสอง และอาศัยทั้งในแบบเดียวกัน
FragmentsActivity - บนโทรศัพท์มือถือที่มีรายชื่อในหนึ่ง
FragmentActivity - เปิดตัวใหม่มีรายละเอียด
ActivityFragment
(เช่นAndroid 3.0 Fragments API โดย Dianne Hackbornและคู่มือFragments API )
Fragmentsในอุปกรณ์ทั้งสองทำงานอยู่ใน (แบบง่าย)
บนแท็บเล็ตแอปทั้งหมดเป็น1Activityในโทรศัพท์มีจำนวนมากActivities
คำถาม:
- มีเหตุผลที่จะแยกแอพโทรศัพท์ออกเป็นจำนวนมาก
Activitiesหรือไม่?
หนึ่งปัญหาด้วยวิธีนี้คือการที่คุณซ้ำกันจำนวนมากของลอจิกในแท็บเล็ตหลักและในโทรศัพท์ที่แยกต่างหากActivityActivities
- จะง่ายกว่าไหมถ้าจะคงรูปแบบ 1 กิจกรรมไว้ในทั้งสองกรณีโดยใช้ตรรกะเดียวกันในการสลับ
Fragmentsเข้าและออก (ใช้รูปแบบที่แตกต่างกัน)
วิธีนี้ตรรกะส่วนใหญ่อยู่ในFragmentsตัวของมันเองและมีการActivityทำสำเนารหัสเพียงครั้งเดียวน้อยลง
สิ่งที่ฉันได้อ่านเกี่ยวกับสิ่งActionBarSherlockที่ดูเหมือนว่าจะทำงานได้ดีที่สุดด้วยFragmentsแทนที่จะเป็นActivities(แต่ฉันยังไม่ได้ทำงานด้วย)
แบบฝึกหัดเกินความจริงหรือฉันพลาดสิ่งสำคัญในแนวทางนี้หรือไม่?
เราได้ลองทั้งสองวิธีในสำนักงานเรียบร้อยแล้ว - แต่ฉันกำลังจะเริ่มโครงการที่ใหญ่กว่าและต้องการทำสิ่งต่าง ๆ ให้ง่ายที่สุดสำหรับตัวเอง
ลิงก์ไปยังคำถามที่เกี่ยวข้อง:
- Dilemma: เมื่อใดควรใช้ Fragments vs Activities:
- รูปแบบเวลาที่จะใช้ Activity Transition กับ Dynamic Fragments
- Android - ฉันต้องการความกระจ่างของชิ้นส่วนและกิจกรรมและมุมมอง
- กิจกรรมหรือชิ้นส่วนใน Android?
- การออกแบบปฏิสัมพันธ์และกิจกรรมหลายส่วน
- ดังนั้นข้อดีของ Fragments ใน Android 3.0 คืออะไร?
อัพเดท
เริ่มจ่ายเงินตามคำถาม - ยังไม่มั่นใจว่าทำไมฉันต้องทำซ้ำตรรกะแอพของฉันในกิจกรรมแท็บเล็ตของฉันและในแต่ละกิจกรรมโทรศัพท์
พบบทความที่น่าสนใจโดยผู้ชายที่ Square ซึ่งน่าอ่านดี:
onItemSelected()วิธีการในกิจกรรม ในแอป "ของจริง" ของฉันฉันมีรายการ & รายการย่อยมากมาย รูปแบบนี้แสดงให้เห็นว่ากิจกรรมแท็บของฉันต้องมีonItemSelected()วิธีจัดการแต่ละรายการ นอกจากนี้กิจกรรมทางโทรศัพท์แต่ละคนจะต้องมีตรรกะเดียวกันที่ซ้ำกันภายในแต่ละกิจกรรม IMHO เป็นการดีกว่ามากที่จะใส่ตรรกะการเลือกรายการลงในแต่ละส่วน - ไม่มีการทำซ้ำและฉันชอบวิธีการสร้างรหัสนั้น ฉันหวังว่านี่จะช่วยได้