สารบัญ:

สร้างมุมมองเลื่อนด้วย Swift: 9 ขั้นตอน
สร้างมุมมองเลื่อนด้วย Swift: 9 ขั้นตอน

วีดีโอ: สร้างมุมมองเลื่อนด้วย Swift: 9 ขั้นตอน

วีดีโอ: สร้างมุมมองเลื่อนด้วย Swift: 9 ขั้นตอน
วีดีโอ: iOS Dev 9: ScrollView using AutoLayout | Swift 5, XCode 11 2024, กรกฎาคม
Anonim
Image
Image

ไม่กี่เดือนที่ผ่านมา ฉันไม่รู้ว่ามีสวิฟท์และ Xcode อยู่หรือไม่ วันนี้ ฉันสามารถพัฒนาส่วนเล็กๆ ของแอปพลิเคชันที่ฉันต้องการสร้างได้ ฉันสามารถสร้างสรรค์สิ่งที่เจ๋งๆ ขึ้นมาได้ ซึ่งฉันอยากจะแบ่งปันกับคุณ

ในบทช่วยสอนนี้ ฉันจะนำคุณผ่านขั้นตอนการสร้างฉากมุมมองเลื่อน ซึ่งผู้ใช้จะถูกเปลี่ยนเส้นทางเมื่อพวกเขาต้องการลงทะเบียนบัญชีใหม่ ระหว่างทาง ฉันจะให้คำอธิบายเชิงทฤษฎีเกี่ยวกับสิ่งที่เราทำ เพื่อให้คุณเข้าใจได้อย่างแท้จริงว่าเรากำลังทำอะไรอยู่

ก่อนที่เราจะทำอย่างนั้นเรามาพูดถึง Swift และ Xcode กันก่อนว่าคืออะไร:

1. Swift เป็นภาษาการเขียนโปรแกรมที่ทรงพลังและใช้งานง่ายสำหรับ macOS, iOS, watchOS และ tvOS การเขียนโค้ด Swift เป็นแบบโต้ตอบและสนุกสนาน ไวยากรณ์นั้นกระชับแต่สื่อความหมายได้ และ Swift ก็มีฟีเจอร์ทันสมัยที่นักพัฒนาชื่นชอบ โค้ด Swift นั้นปลอดภัยจากการออกแบบ แต่ยังสร้างซอฟต์แวร์ที่ทำงานรวดเร็วปานสายฟ้าแลบ ได้รับการออกแบบมาเพื่อทำงานร่วมกับกรอบงาน Cocoa และ Cocoa Touch ของ Apple และโค้ด Objective-C ที่มีอยู่จำนวนมากซึ่งเขียนขึ้นสำหรับผลิตภัณฑ์ Apple มันถูกสร้างขึ้นด้วยเฟรมเวิร์กคอมไพเลอร์ LLVM แบบโอเพ่นซอร์สและรวมอยู่ใน Xcode ตั้งแต่เวอร์ชัน 6 ซึ่งเปิดตัวในปี 2014 บนแพลตฟอร์มของ Apple จะใช้ไลบรารีรันไทม์ Objective-C ซึ่งอนุญาตให้รันโค้ด C, Objective-C, C++ และ Swift ภายในโปรแกรมเดียว

2. Xcode คือสภาพแวดล้อมการพัฒนาแบบบูรณาการ (IDE) สำหรับ macOS ที่มีชุดเครื่องมือพัฒนาซอฟต์แวร์ที่พัฒนาโดย Apple สำหรับการพัฒนาซอฟต์แวร์สำหรับ macOS, iOS, watchOS และ tvOS

ขั้นตอนที่ 1: ดาวน์โหลด Xcode

ทำงานใน UI
ทำงานใน UI

Xcode 10 มีทุกสิ่งที่คุณต้องการเพื่อสร้างแอพที่น่าทึ่งสำหรับแพลตฟอร์ม Apple ทั้งหมด ตอนนี้ Xcode และ Instruments ดูดีในโหมดมืดใหม่บน macOS Mojave ตัวแก้ไขซอร์สโค้ดช่วยให้คุณแปลงหรือสร้างโค้ดใหม่ได้ง่ายขึ้น ดูการเปลี่ยนแปลงการควบคุมซอร์สควบคู่ไปกับบรรทัดที่เกี่ยวข้อง และรับรายละเอียดเกี่ยวกับความแตกต่างของโค้ดอัปสตรีมอย่างรวดเร็ว คุณสามารถสร้างเครื่องมือของคุณเองด้วยการแสดงภาพและการวิเคราะห์ข้อมูลแบบกำหนดเอง Swift รวบรวมซอฟต์แวร์ได้เร็วยิ่งขึ้น ช่วยให้คุณส่งแอพได้เร็วยิ่งขึ้น และสร้างไบนารีที่เล็กกว่า ชุดทดสอบจะเสร็จสมบูรณ์เร็วขึ้นหลายเท่า การทำงานร่วมกับทีมทำได้ง่ายกว่าและปลอดภัยกว่า และอื่นๆ อีกมากมาย

Xcode 10 มี Swift 4.2 ซึ่งจะคอมไพล์ซอฟต์แวร์ของคุณเร็วขึ้น ช่วยให้คุณส่งแอพได้เร็วยิ่งขึ้น และสร้างไบนารีที่เล็กกว่า เมื่อเทียบกับ Swift 4.0 คอมไพเลอร์ Swift รุ่นล่าสุดสามารถสร้างแอปขนาดใหญ่ได้เร็วกว่าสองเท่า* เมื่อรวมกับระบบบิลด์ใหม่ของ Xcode การแก้ไข สร้าง และทดสอบเวิร์กโฟลว์ในแต่ละวันของคุณจะเร็วขึ้นมาก ปรับให้เหมาะสมสำหรับฮาร์ดแวร์ Mac แบบมัลติคอร์ล่าสุด Xcode และ Swift ทำให้เป็นแพลตฟอร์มการพัฒนาที่รวดเร็ว

ขั้นตอนที่ 2: มาเริ่มกันเลย

Image
Image

สิ่งที่เราจะทำคือไปที่ Xcode และสร้างโครงการใหม่ เมื่อเราคลิกโครงการใหม่ แอปพลิเคชันของเราจะเป็นแอปมุมมองเดียว สำหรับผู้ที่ไม่ทราบ แอปมุมมองเดียวหมายความว่าคุณจะต้องเริ่มต้นทุกอย่างตั้งแต่เริ่มต้น และจะมีมุมมองเดียวที่เราสามารถตั้งโปรแกรมได้

ตั้งชื่อผลิตภัณฑ์ TutorialApp ของคุณ หากคุณเป็นนักพัฒนาที่มีประสบการณ์ซึ่งเผยแพร่แอปใน App Store คุณอาจมีทีม แต่ถ้าคุณยังใหม่และไม่มีแอปพลิเคชันที่เผยแพร่ คุณสามารถข้ามฟิลด์นี้ได้ ในชื่อองค์กร คุณสามารถเขียนชื่อบริษัทในกรณีที่คุณมี ในกรณีของฉัน ฉันจะเก็บ MacBook Pro ไว้ จากนั้น ตัวระบุองค์กรจะถือว่าเป็นตัวระบุเฉพาะของโปรเจ็กต์ของคุณ ดังนั้น คุณสามารถเขียนอะไรก็ได้ที่คุณต้องการ ภาษาจะรวดเร็วอย่างแน่นอน

ดังนั้นให้กดถัดไปและบันทึกโครงการบนเดสก์ท็อปเพื่อให้เข้าถึงได้ง่าย

โปรเจ็กต์ใหม่ประกอบด้วยไฟล์สามไฟล์ ได้แก่ AppDelegate.swift, ViewController.swift และดาวเด่นของบทช่วยสอนนี้: Main.storyboard ภายใต้ข้อมูลการปรับใช้ > การวางแนวอุปกรณ์ ในการตั้งค่าโปรเจ็กต์ทั่วไป ให้ตั้งค่าอุปกรณ์เป็น iPhone เนื่องจากแอปนี้เป็นแอปในแนวตั้งเท่านั้น ให้ยกเลิกการเลือกตัวเลือกแนวนอนซ้ายและแนวนอน เปิด Main.storyboard ในตัวนำทางโปรเจ็กต์เพื่อดูใน Interface Buildereditor:

เราจะไม่ทำการเปลี่ยนแปลงใดๆ ในการกำหนดค่า และเราจะไปที่กระดานหลักโดยตรง เนื่องจากเราสร้างแอปมุมมองเดียว เราจึงสร้างมุมมองเดียวที่ว่างเปล่า นี่คือสิ่งที่เราต้องดำเนินการ

ขั้นตอนที่ 3: ทำงานใน UI

ทำงานใน UI
ทำงานใน UI
ทำงานใน UI
ทำงานใน UI

คำศัพท์กระดานเรื่องราวอย่างเป็นทางการสำหรับตัวควบคุมการดูคือ "ฉาก" แต่คุณสามารถใช้คำเหล่านี้แทนกันได้ ฉากแสดงถึงตัวควบคุมการดูในกระดานเรื่องราว

ที่นี่คุณจะเห็นตัวควบคุมมุมมองเดียวที่มีมุมมองที่ว่างเปล่า ลูกศรที่ชี้ไปที่ตัวควบคุมการดูจากด้านซ้ายแสดงว่าเป็นตัวควบคุมการดูเริ่มต้นที่จะแสดงสำหรับกระดานเรื่องราวนี้ การออกแบบเลย์เอาต์ในตัวแก้ไขสตอรีบอร์ดทำได้โดยการลากตัวควบคุมจาก Object Library (ดูมุมบนขวา) ลงในคอนโทรลเลอร์มุมมองของคุณ

เพื่อให้เข้าใจถึงวิธีการทำงานของตัวแก้ไขกระดานเรื่องราว ให้ลากตัวควบคุมบางอย่างจาก Object Library ลงในตัวควบคุมมุมมองเปล่าดังที่เห็นในวิดีโอ

เมื่อคุณลากตัวควบคุมเข้าไป ตัวควบคุมควรแสดงในเค้าร่างเอกสารทางด้านซ้าย

คุณสามารถสร้างส่วนต่อประสานผู้ใช้ที่คุณต้องการ ในกรณีของฉัน ฉันใช้อันที่คุณเห็นในภาพ

ขั้นตอนที่ 4: พัฒนาตัวควบคุมมุมมองที่สองและเริ่มต้น Segues (ช่วงเปลี่ยนผ่าน)

Image
Image
สร้างการปัดแนวนอนของหน้า
สร้างการปัดแนวนอนของหน้า

ดังนั้น ในแอพของฉัน เมื่อผู้ใช้กดปุ่ม "ลงทะเบียนบัญชีใหม่" ฉันต้องการให้เขาถูกเปลี่ยนเส้นทางไปยังหน้าบัญชีลงทะเบียน ด้วยเหตุนี้ ทุกหน้าจึงเป็นฉากใหม่ เป็นการแสดงใหม่ ด้วยเหตุผลดังกล่าว เราจึงต้องสร้างตัวควบคุมมุมมองที่สอง ซึ่งคุณจะพบได้ในไลบรารีวัตถุ

พิมพ์ view controller และวางไว้ข้างตัวควบคุมการดูเริ่มต้นของคุณ ฉากนี้จะรับผิดชอบสำหรับตัวควบคุมมุมมองการลงทะเบียน การเปลี่ยนเส้นทางไปยังหน้านั้นสามารถทำได้สองวิธี:

  1. เราสามารถทำได้ด้วยตนเองเมื่อเราทำการเชื่อมต่อการกระทำจากปุ่มไปยังตัวควบคุมมุมมองอื่น
  2. เราสามารถทำได้โดยทางโปรแกรม

สิ่งที่ฉันเลือกทำคือทำเอง มันง่ายอย่างที่:

  1. คลิกซ้ายหนึ่งครั้งที่ปุ่มของคุณ (ในกรณีของฉัน ลงทะเบียนบัญชีใหม่)
  2. กดค้างคำสั่งและคลิกเมาส์ซ้ายเพื่อลากไปยังฉากควบคุมการลงทะเบียน
  3. ปล่อยที่นั่นและเลือก "นำเสนอ Modally"

ขั้นตอนที่ 5: สร้างคลาสการเขียนโปรแกรมสำหรับขั้นตอนการลงทะเบียน

ดังนั้น ตอนนี้ เราต้องการสร้างคลาสการเข้ารหัสเฉพาะสำหรับฉากใหม่

คุณต้องทำตามขั้นตอนต่อไปนี้:

  • คลิกขวาที่โฟลเดอร์โครงการของคุณ
  • คลิกที่ไฟล์ใหม่ที่เรียกว่าcoco touch class
  • ในชั้นเรียนเขียน: RegisterVC
  • สำคัญมาก! ตรวจสอบให้แน่ใจว่าคลาสย่อยต้องเป็นประเภท UIViewController
  • ภาษาต้องเร็ว
  • คลิกถัดไปและบันทึกคลาสโกโก้ของคุณไว้ในรูทหลักของโปรเจ็กต์ของคุณ
  • คลิกที่กระดานหลักและไปที่ตัวควบคุมมุมมองใหม่
  • คลิกที่ปุ่มสีเหลืองที่วางอยู่เหนือมัน
  • ทางด้านขวาให้ไปที่ผู้ตรวจสอบคลาสและอ้างอิง Register VC (คลาส Costum, class = RegisterVC

ขั้นตอนที่ 6: สร้างการปัดแนวนอนของหน้า

ใน iOS มุมมองเลื่อนจะใช้เพื่อดูเนื้อหาที่ไม่พอดีกับหน้าจอทั้งหมด มุมมองเลื่อนมีวัตถุประสงค์หลักสองประการ:

เพื่อให้ผู้ใช้ลากพื้นที่ของเนื้อหาที่ต้องการแสดง เพื่อให้ผู้ใช้ซูมเข้าหรือออกจากเนื้อหาที่แสดงโดยใช้การบีบนิ้ว การควบคุมทั่วไปที่ใช้ในแอป iOS – UITableView – เป็นคลาสย่อยของ UIScrollView และเป็นวิธีที่ยอดเยี่ยมในการดูเนื้อหาที่ใหญ่กว่าหน้าจอ

อะไรใช้หน้าย่อยในการปัดแนวนอน?

ถ้าฉันสร้างหน้าที่แตกต่างกัน 6 หน้าก็หมายความว่าฉันต้องสร้างชั้นเรียนเฉพาะสำหรับแต่ละหน้าและไม่สะดวกที่จะส่งข้อมูลจากชั้นเรียนหนึ่งไปยังอีกชั้นเรียนหนึ่ง ตัวอย่างเช่น เมื่อผมพิมพ์อีเมลแล้วคลิกถัดไป หากฉันมีตัวควบคุมมุมมองอื่น ฉันจะออกจากหน้าแรกของ View Controller จากนั้นหน้าที่สองจะปรากฏขึ้น ในกรณีนี้ ข้อมูลของ view controller ตัวแรก จะต้องถูกส่งต่อไปยัง view controller ตัวที่ 3 ต่อจากนี้ไปอีก เป็นต้น เมื่อได้ view controller ครบทุกตัวแล้ว จะต้องรวบรวมข้อมูลทั้งหมดจากทั้งหมด หน้าและส่งไปยังเซิร์ฟเวอร์ ดังนั้นสิ่งนี้จะซับซ้อนจริงๆ

ดังนั้น ไปที่การสร้างตัวควบคุมมุมมองนี้ ในกรณีของฉัน ฉันมี 5 หน้าที่ฉันต้องการสร้าง:

  1. อีเมล
  2. ชื่อเต็ม
  3. รหัสผ่าน
  4. วันเกิด
  5. เพศ

ซึ่งหมายความว่า View Controller ที่เราจะสร้างจะต้องใหญ่กว่าที่เราสร้างไว้ 5 เท่า

เลือกตัวควบคุมมุมมองของคุณและไปที่มุมบนขวาแล้วคลิกไอคอนไม้บรรทัดและแก้ไขขนาดจำลอง คุณจะเลือก Freeform เพื่อปรับความกว้างและความสูง ความกว้างเริ่มต้นของหน้าจอซึ่งเหมาะสำหรับ iphone 8 คือ 375 ดังนั้นถ้าฉันคูณ 375*5 = 1875 และที่นี่ คุณมีตัวควบคุมมุมมองแบบขยาย

ในทำนองเดียวกัน คุณทำตามขั้นตอนเดียวกันสำหรับโทรศัพท์และขนาดหน้าจอที่ต่างกันทั้งหมด

เพื่อให้มุมมองเลื่อนทำงาน เราจำเป็นต้องมีวัตถุมุมมองเลื่อน มุมมองเลื่อนมีกลไกในการแสดงเนื้อหาที่ใหญ่กว่าขนาดของหน้าต่างแอปพลิเคชัน คลิกที่วัตถุนี้ ลากและวางที่มุมบนซ้ายของตัวควบคุมการดู และตรวจดูให้แน่ใจว่า X และ Y อยู่ในตำแหน่งศูนย์และยืดให้สอดคล้องกับตัวควบคุมมุมมองของคุณ

Scroll View อนุญาตให้เราเลื่อนเท่านั้น ไม่มีอะไรอื่น จากนั้นเราต้องเพิ่มมุมมองเนื้อหาซึ่งจะจัดเก็บมุมมองอื่นๆ คุณสามารถค้นหา UIView ซึ่งแสดงถึงพื้นที่สี่เหลี่ยมที่ดึงและรับเหตุการณ์ในไลบรารีอ็อบเจ็กต์ เพียงคลิกและลากไปยังมุมมองการเลื่อน แล้วยืดออกอีกครั้งตามนั้น

เลือกมุมมองการเลื่อนจากแผงด้านซ้าย และเราจะเรียกการจัดตำแหน่ง 0, 0, 0, 0 และเพิ่มข้อจำกัด ทำสิ่งเดียวกันสำหรับมุมมองเนื้อหา

ขั้นตอนที่ 7: พัฒนาส่วนต่อประสานผู้ใช้สำหรับหน้าย่อยของการปัดแนวนอน

Image
Image
ใช้การออกแบบใน Xcode
ใช้การออกแบบใน Xcode

ในขั้นตอนนี้ คุณต้องสร้าง UI ของเพจย่อยของคุณ สิ่งที่ฉันเลือกทำคือสร้างต้นแบบใน Sketch แล้วสร้างใน Xcode

ขั้นตอนที่ 8: ใช้การออกแบบใน Xcode

ใช้การออกแบบใน Xcode
ใช้การออกแบบใน Xcode
ใช้การออกแบบใน Xcode
ใช้การออกแบบใน Xcode

ขั้นตอนต่อไปคือการนำการออกแบบนี้ไปใช้ใน Xcode ในการทำเช่นนั้น คุณต้องสร้างการเชื่อมต่อเต้ารับสำหรับเพจย่อยทั้งหมด และสร้างอีกอันสำหรับ "มุมมองแม่" ซึ่งหมายถึงการเชื่อมต่อเต้ารับหนึ่งจุดสำหรับตัวควบคุมมุมมองทั้งหมด

องค์ประกอบในกระดานเรื่องราวเชื่อมโยงกับซอร์สโค้ด สิ่งสำคัญคือต้องเข้าใจความสัมพันธ์ที่กระดานเรื่องราวมีกับโค้ดที่คุณเขียน

ในกระดานโครงเรื่อง ฉากจะแทนหน้าจอของเนื้อหาหนึ่งหน้าจอ และโดยทั่วไปแล้วจะเป็นตัวควบคุมมุมมองหนึ่งรายการ ดูผู้ควบคุมใช้พฤติกรรมของแอปและจัดการมุมมองเนื้อหาเดียวด้วยลำดับชั้นของการดูย่อย พวกเขาประสานการไหลของข้อมูลระหว่างรูปแบบข้อมูลของแอป ซึ่งสรุปข้อมูลของแอป และมุมมองที่แสดงข้อมูลนั้น จัดการวงจรชีวิตของมุมมองเนื้อหา จัดการการเปลี่ยนแปลงการวางแนวเมื่อหมุนอุปกรณ์ กำหนดการนำทางภายในแอปของคุณ และใช้พฤติกรรมเพื่อตอบสนองต่อการป้อนข้อมูลของผู้ใช้ ออบเจ็กต์ตัวควบคุมมุมมองทั้งหมดใน iOS เป็นประเภท UIViewController หรือหนึ่งในคลาสย่อย

คุณกำหนดพฤติกรรมของตัวควบคุมมุมมองของคุณในโค้ดโดยการสร้างและใช้งานคลาสย่อยของตัวควบคุมมุมมองแบบกำหนดเอง จากนั้นคุณสามารถสร้างการเชื่อมต่อระหว่างชั้นเรียนและฉากเหล่านั้นในกระดานเรื่องราวของคุณ เพื่อรับพฤติกรรมที่คุณกำหนดไว้ในโค้ดและอินเทอร์เฟซผู้ใช้ที่คุณกำหนดไว้ในกระดานเรื่องราวของคุณ

Xcode ได้สร้างคลาสที่คุณเคยดูก่อนหน้านี้แล้ว นั่นคือ ViewController.swift และเชื่อมต่อกับฉากที่คุณกำลังทำงานอยู่ในกระดานเรื่องราวของคุณ เมื่อคุณเพิ่มฉากมากขึ้น คุณจะเชื่อมโยงตัวเองในตัวตรวจสอบข้อมูลประจำตัว ตัวตรวจสอบข้อมูลประจำตัวช่วยให้คุณแก้ไขคุณสมบัติของวัตถุในกระดานเรื่องราวที่เกี่ยวข้องกับข้อมูลประจำตัวของวัตถุนั้นได้ เช่น วัตถุนั้นเป็นของคลาสใด

สร้าง Outlets สำหรับ UI ElementsOutlets ให้วิธีการอ้างอิงอ็อบเจ็กต์อินเทอร์เฟซ - ออบเจ็กต์ที่คุณเพิ่มลงในกระดานเรื่องราวของคุณ - จากไฟล์ซอร์สโค้ด ในการสร้างทางออก ให้กด Control แล้วลากจากวัตถุเฉพาะในกระดานเรื่องราวของคุณไปยังไฟล์ตัวควบคุมการดู การดำเนินการนี้สร้างคุณสมบัติสำหรับอ็อบเจ็กต์ในไฟล์ view controller ซึ่งช่วยให้คุณเข้าถึงและจัดการอ็อบเจ็กต์นั้นจากโค้ดขณะรันไทม์

  1. เปิดกระดานเรื่องราวของคุณ Main.storyboard
  2. คลิกปุ่มผู้ช่วยในแถบเครื่องมือ Xcode ใกล้มุมบนขวาของ Xcode เพื่อเปิดตัวแก้ไขผู้ช่วย หากคุณต้องการพื้นที่ทำงานมากขึ้น ให้ยุบตัวนำทางโครงการและพื้นที่ยูทิลิตี้โดยคลิกปุ่มตัวนำทางและยูทิลิตี้ในแถบเครื่องมือ Xcode
  3. คุณยังสามารถยุบมุมมองเค้าร่างได้อีกด้วย

ในแถบตัวเลือกตัวแก้ไข ซึ่งปรากฏที่ด้านบนสุดของตัวแก้ไขตัวช่วย ให้เปลี่ยนตัวแก้ไขตัวช่วยจากแสดงตัวอย่างเป็นอัตโนมัติ > ViewController.swift

คลิกหน้าย่อยแล้วลากเข้าไปในชั้นเรียนที่เหมาะสมในโค้ด

ขั้นตอนที่ 9: ผสานรวมท่าทางสัมผัสที่กำหนดเอง

Image
Image
ผสานรวมท่าทางสัมผัสที่กำหนดเอง
ผสานรวมท่าทางสัมผัสที่กำหนดเอง

ท่าทางรูด

ท่าทางสัมผัสการปัดเกิดขึ้นเมื่อผู้ใช้เลื่อนนิ้วหนึ่งนิ้วขึ้นไปบนหน้าจอในทิศทางแนวนอนหรือแนวตั้งที่เฉพาะเจาะจง ใช้คลาส UISwipeGestureRecognizer เพื่อตรวจจับท่าทางการปัด

การใช้ท่าทางการปัด

ขั้นตอนที่ 1: เพิ่มท่าทางสัมผัสการปัดในเมธอด viewDidLoad()

แทนที่ func viewDidLoad () { super.viewDidLoad ()

ให้ swipeLeft = UISwipeGestureRecognizer (เป้าหมาย: ตนเอง, การกระทำ: #selector (จัดการท่าทาง)) swipeLeft.direction =.left self.view.addGestureRecognizer (swipeLeft)

ให้ swipeRight = UISwipeGestureRecognizer (เป้าหมาย: ตนเอง, การกระทำ: #selector(handleGesture)) swipeRight.direction =.right self.view.addGestureRecognizer (swipeRight)

ให้ swipeUp = UISwipeGestureRecognizer (เป้าหมาย: ตนเอง, การกระทำ: #selector (จัดการท่าทาง)) swipeUp.direction =.up self.view.addGestureRecognizer (swipeUp)

ให้ swipeDown = UISwipeGestureRecognizer (เป้าหมาย: ตนเอง, การกระทำ: #selector(handleGesture)) swipeDown.direction =.down self.view.addGestureRecognizer (swipeDown) }

ขั้นตอนที่ 2: ตรวจสอบการตรวจจับท่าทางสัมผัสใน handleGesture() method func handleGesture(gesture: UISwipeGestureRecognizer) -> Void { if gesture.direction == UISwipeGestureRecognizerDirection.right { print("Swipe Right") } else if gesture.direction == UISwipeGestureRecognizerDirection ซ้าย { พิมพ์ ("ปัดไปทางซ้าย") } อื่นหาก gesture.direction == UISwipeGestureRecognizerDirection.up { พิมพ์ ("กวาดนิ้วขึ้น") } อื่นหาก gesture.direction == UISwipeGestureRecognizerDirection.down { พิมพ์ ("ปัดลง") } }

ในแอพของฉัน ฉันต้องการใช้ swipeRight แต่ไม่สามารถเลือกใช้อันที่เหมาะสมกับแอปพลิเคชันของคุณได้

ตอนนี้ เรามาปรับใช้สิ่งนี้กับโค้ดของเรากัน

ไปที่ registerVC.swift ที่เราสร้างไว้ก่อนแล้วเขียนโค้ดตามที่เห็นในภาพ

คำอธิบายของรหัส

ให้ current_x รับตำแหน่งปัจจุบันของ ScrollView (ตำแหน่งแนวนอน) ให้ screen_width รับความกว้างของหน้าจอ ให้หักขนาดนี้ ให้ new_x จากตำแหน่งปัจจุบันของ scrollview ฉันกลับมาตามความกว้างของหน้าจอถ้า current_x > 0 จนกว่ามันจะมากกว่า 0 - 0 คือหน้าที่ 1

และเราเสร็จแล้ว!

ทำได้ดีมาก!

แนะนำ: