Swift: จะส่งข้อมูลไปยังตะกร้าสินค้า (อาร์เรย์) ของฉันได้อย่างไร

ฉันใหม่ที่นี่และกำลังพยายามเขียน App เล็กๆ ตัวแรกของฉันใน Swift ฉันต้องลงโปรแกรม Book-Shopping-App นิดหน่อย แต่ตอนนี้มีปัญหา หากฉันกดปุ่ม "เพิ่มลงในการ์ด" ใน DetailView ของฉัน ฉันต้องการส่งข้อมูลหนังสือของฉันไปยังระดับบัตรช้อปปิ้งของฉัน Shopping-Card-Class เป็น TableView พร้อมอาร์เรย์ นี่คือ DetailView ของฉัน: http://fs5.directupload.net/images/160120/tpsdezys.png

หากฉันกดสิ่งนี้ ฉันต้องการส่งต่อไปยัง Shopping-Card-Class/Screen ของฉัน ที่นี่: http://fs5.directupload.net/images/160120/qhsbi6aq.png

ใน DetailView ของฉันมีหนังสือทั้งหมดเช่น: var autorName: String? ชื่อ var: String? ราคา: สตริง? ภาพ var: String?

และใน Shopping-Card-Class ก็คือ Array นั่นแหละ แต่ฉันไม่รู้ว่าจะส่งข้อมูลอย่างไร :/

ถ้าฉันกดปุ่ม ฉันแค่เพิ่มหนังสือ ฉันจะไม่สลับหน้าจอ

ฉันเคยใช้ Delegates มาก่อน แต่ไม่เคยใช้ร่วมกับอาร์เรย์ โปรดช่วยด้วย :/ ฉันใช้มันที่นี่ ดู: fs5.directupload.net/images/160121/8zmfqef4.png และส่งข้อมูลไปยังหน้าจอนี้: fs5.directupload.net /images/160121/2263tiwl.png


person Perazim    schedule 20.01.2016    source แหล่งที่มา


คำตอบ (1)


ฉันขอแนะนำให้เริ่มต้นที่นี่! เมื่อคุณทำตามขั้นตอนเหล่านี้แล้ว คุณจะมีความเข้าใจมากขึ้นเกี่ยวกับวิธีการส่งข้อมูลระหว่าง ViewControllers ในการตามล่าหา คุณจะต้องยุ่งกับเมธอด PreparForSegue และใช้ Segue Identifier เพื่อดูว่าคุณกำลังข้ามไปยัง View Controller ใด จากนั้นตั้งค่าตัวแปรอินสแตนซ์ของคลาสนั้นให้เท่ากับข้อมูลที่คุณมีในคลาสนี้ สิ่งนี้จะส่งผ่านข้อมูลจากคลาสหนึ่งไปยังอีกคลาสหนึ่งเป็นหลัก

person Kevin Rajan    schedule 20.01.2016
comment
สวัสดี ฉันเคยใช้ผู้รับมอบสิทธิ์มาก่อน แต่ไม่เคยใช้ร่วมกับอาร์เรย์เลย :/ ฉันใช้มันที่นี่ ดู: collectionView และส่งข้อมูลไปยังหน้าจอนี้: DetailView< /ก> - person Perazim; 21.01.2016
comment
โปรดชี้แจงว่าคุณหมายถึงอะไร ถ้าฉันกดปุ่ม ฉันแค่เพิ่มหนังสือ ฉันจะไม่สลับหน้าจอ คุณกำลังบอกว่าเมื่อหนังสือถูกคลิก หนังสือนั้นไม่เปิด detailVC หรือเปิดขึ้นมา แต่หนังสือที่เปิดนั้นเป็นเพียงหนังสือทั่วไป ไม่ใช่หนังสือเฉพาะเจาะจงที่คุณคลิกใช่หรือไม่ หรือเป็นเพียงเรื่องการส่งข้อมูลกลับจาก detailVC ไปยัง TableView? - person Kevin Rajan; 21.01.2016
comment
ฉันต้องการซื้อหนังสือเล่มนั้น ซึ่งฉันเห็นใน DetailView ดังนั้นฉันจึงคลิก/กดปุ่ม เพิ่มลงในการ์ด คุณสามารถดูรายละเอียดนี้ได้ที่นี่: ลิงก์ หลังจากที่ฉันกดเพิ่มลงในการ์ด- ปุ่ม ฉันต้องการให้ข้อมูลทั้งหมดของหนังสือเล่มนี้ไปที่อาร์เรย์ซึ่งอยู่ในคลาส Add-To-Card ในคลาสนี้ฉันมี Array ซึ่งเชื่อมต่อกับ tableView คุณสามารถดูได้ที่นี่: ลิงก์ - person Perazim; 21.01.2016
comment
เลยกำลังชอปปิ้งในแอพอยู่เห็นหนังสือเล่มหนึ่งที่ชอบก็เลยกดเพิ่มลงการ์ดแล้วก็ไปดูเล่มอื่นที่ผมชอบแล้วก็เพิ่มหนังสือเล่มนี้ลงในการ์ดของผมอีกครั้งด้วยและที่ ในตอนท้ายของการช็อปปิ้ง ฉันไปที่ Add-To-Card-Class ซึ่งเป็นมุมมองตาราง และที่นั่นฉันสามารถดูหนังสือทั้งหมดที่ฉันต้องการซื้อได้ - person Perazim; 21.01.2016
comment
ฉันคิดว่ามันเป็นอย่างที่คุณพูดหรือเป็นเพียงเรื่องของการส่งข้อมูลกลับจาก detailVC ไปยัง TableView แต่ไม่ใช่ sendig กลับ เพียงส่งไปยัง tableview อื่น ... - person Perazim; 21.01.2016
comment
ตกลง ฉันเข้าใจแล้ว ฉันใช้ซิงเกิลตัน :) ty - person Perazim; 21.01.2016
comment
@Perazim 3 ปีหลังจากที่คุณฉันอยู่ในสถานการณ์เดียวกันไม่พบวิธีแก้ปัญหาใด ๆ ประมาณหนึ่งสัปดาห์ ดังนั้นรหัสของคุณเกี่ยวกับปัญหานี้หรือไม่ :) - person Emre Değirmenci; 11.03.2019
comment
@ EmreDeğirmenci เฮ้ ฉันคิดว่าฉันไม่สามารถช่วยคุณได้อีกต่อไป เมื่อ 3 ปีที่แล้ว และฉันจำไม่ได้ว่าฉันแก้ไขมันอย่างไร แต่คุณเห็นว่าฉันเขียนว่าฉันใช้ซิงเกิลตัน ดังนั้นฉันเดาว่าฉันเอาคลาส Add-To-Card-Class ของฉันมาเปลี่ยนเป็นซิงเกิลตัน เพื่อที่ฉันจะได้ส่งหนังสือทั้งหมดไปยังอินสแตนซ์/วัตถุที่ถูกต้อง และฉันก็เดาว่าฉัน ดูบทช่วยสอนนี้เพื่อทำความเข้าใจวิธีการทำงาน: developer.apple.com/library /เก็บถาวร/referencelibrary/ - person Perazim; 12.03.2019