আমি সুইফটইউআই সম্পর্কে জানতে সাহায্যের জন্য একটি সাধারণ খনি অ্যাপ্লিকেশন লিখছি। এর মতো, আমি প্রাথমিক ক্লিক (সাধারণত এলএমবি) "খনন" করতে (সেখানে কোন খনি আছে কিনা তা প্রকাশ করে) এবং একটি পতাকা রাখতে সেকেন্ডারি ক্লিক (সাধারণত আরএমবি) চাই।
আমি খনন কাজ করছি! তবে আমি কীভাবে একটি পতাকা স্থাপন করব তা অনুগ্রহ করতে পারি না, কারণ আমি কীভাবে দ্বিতীয় ক্লিকটি সনাক্ত করতে পারি তা বুঝতে পারি না।
BoardSquareView(
style: self.style(for: square),
model: square
)
.gesture(TapGesture().modifiers(.control).onEnded(self.handleUserDidAltTap(square)))
.gesture(TapGesture().onEnded(self.handleUserDidTap(square)))
যেমনটি আমি আগেই বলেছি, ফাংশনটি ফিরিয়ে দেওয়া handleUserDidTap
হয়েছে ক্লিকের জন্য সঠিকভাবে বলা হয়, তবে যেটি ফিরে আসে handleUserDidAltTap
কেবল তখনই ডাকা হয় যখন আমি নিয়ন্ত্রণ কী ধরে রাখি। এটি অর্থবোধ করে কারণ এটাই কোড বলে ... তবে আমি এমন কোনও এপিআই দেখতে পাচ্ছি না যা এটির মাধ্যমিক ক্লিকগুলি নিবন্ধভুক্ত করতে পারে, তাই অন্য কী করতে হবে তা আমি জানি না।
আমি এটিও চেষ্টা করেছি, তবে আচরণটি অভিন্ন বলে মনে হয়েছিল:
BoardSquareView(
style: self.style(for: square),
model: square
)
.gesture(TapGesture().modifiers(.control).onEnded(self.handleUserDidAltTap(square)))
.onTapGesture(self.handleUserDidTap(square))
.onTapGesture()
এটা দেখ.
.gesture(TapGesture().onEnded(.......))