احصل على لمس الأحداث في uitextview
-
22-09-2019 - |
سؤال
لا توفر Apple التعامل مع الأحداث UITextView
. يتضمن المشروع الذي أقوم بتطويره ملاحظات يمكن قراءتها وقابلة للتحرير ، وأنا أستخدم أ UITextView
. الرجاء مساعدتي في هذه المشكلة - كيف يمكنني الحصول على أحداث لمس لمشروعي؟
المحلول 4
لقد حلت المشكلة باستخدام منطقي الخاص.
أثناء القراءة ، نضيف ملف Custom View
على مدار textview
والعمل مع تلك الطرق:
(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
ولكن عندما نكون في وضع التحرير ، لم يعد ذلك ممكنًا. على أي حال متطلباتي هو فقط في الوضع القابل للقراءة.
شكرا لجميع دعمك لحل المشكلة.
نصائح أخرى
وفقًا لوثائق Apple ، يمكنك تعيين مندوب لـ UITextView وتطبيق UITextViewDelegate.
على وجه التحديد ، يمكنك تحديد أن uitextview تم لمسه من خلال التنفيذ TextViewShouldBeginization.
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView;
تأكد من تعيين خاصية المندوب على UITextView من أجل التقاط الحدث.
قم بإنشاء TextView مخصص وتوفير أحداث اللمس داخل الفئة المخصصة. ثم يمكنك إنشاء طرق في مندوب تلك الفئة المخصصة.
أردت فقط إضافة إلى إجابة كيفن. uitextview يرث من uiscrollview. يجب أن تحصل على جميع الأحداث التي تم إعلانها في بروتوكول UisCrollViewDelegate لعرض النص.
أنا أخذت:
-(void)scrollViewDidScroll:(UIScrollView *)scrollView
عندما أعلنت صفي باعتباره مندوب uitextview.