كيفية التقاط زر "الرجوع" في UINavigationController وتنفيذ الكود الخاص بك؟
مرحبًا! أنا مبتدئ في تطوير iOS باستخدام Swift، ولدي مشكلة. في تطبيقي يوجد UINavigationController مع عدة شاشات. أحتاج إلى تنفيذ إجراء معين (مثل حفظ البيانات أو إظهار تحذير) عندما يضغط المستخدم على زر "الرجوع" القياسي في شريط التنقل.
حاولت تجاوز طريقة `viewWillDisappear`، لكنها تُستدعى ليس فقط عند الضغط على "الرجوع"، بل أيضًا عند أي انتقال إلى شاشة أخرى (مثل push لوحدة تحكم جديدة). هذا غير مناسب.
إليك مثال على الكود الخاص بي:
```swift
class SecondViewController: UIViewController {
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
// هذا الكود يعمل عند الضغط على "الرجوع" وعند الانتقال للأمام
print("الشاشة تختفي")
}
}
```
قرأت أنه يمكن استخدام `UIBarButtonItem` وإنشاء زر "الرجوع" خاص بي، ولكن عندها يفقد النمط القياسي والرسوم المتحركة. كيف يمكنني اعتراض الضغط على زر "الرجوع" بشكل صحيح؟