سؤال

لا توفر Apple التعامل مع الأحداث UITextView. يتضمن المشروع الذي أقوم بتطويره ملاحظات يمكن قراءتها وقابلة للتحرير ، وأنا أستخدم أ UITextView. الرجاء مساعدتي في هذه المشكلة - كيف يمكنني الحصول على أحداث لمس لمشروعي؟

هل كانت مفيدة؟

المحلول 4

لقد حلت المشكلة باستخدام منطقي الخاص.

أثناء القراءة ، نضيف ملف Custom View على مدار textview والعمل مع تلك الطرق:

(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event

ولكن عندما نكون في وضع التحرير ، لم يعد ذلك ممكنًا. على أي حال متطلباتي هو فقط في الوضع القابل للقراءة.

شكرا لجميع دعمك لحل المشكلة.

نصائح أخرى

وفقًا لوثائق Apple ، يمكنك تعيين مندوب لـ UITextView وتطبيق UITextViewDelegate.

http://developer.apple.com/iphone/library/documentation/uikit/reference/uitextviewdelegate_protocol/reference/uitextviewdelegate.html

على وجه التحديد ، يمكنك تحديد أن uitextview تم لمسه من خلال التنفيذ TextViewShouldBeginization.

- (BOOL)textViewShouldBeginEditing:(UITextView *)textView;

تأكد من تعيين خاصية المندوب على UITextView من أجل التقاط الحدث.

قم بإنشاء TextView مخصص وتوفير أحداث اللمس داخل الفئة المخصصة. ثم يمكنك إنشاء طرق في مندوب تلك الفئة المخصصة.

أردت فقط إضافة إلى إجابة كيفن. uitextview يرث من uiscrollview. يجب أن تحصل على جميع الأحداث التي تم إعلانها في بروتوكول UisCrollViewDelegate لعرض النص.

أنا أخذت:

-(void)scrollViewDidScroll:(UIScrollView *)scrollView

عندما أعلنت صفي باعتباره مندوب uitextview.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top