سؤال

لدي UITEXTVIEW و 2 UITExtfield إعدادها. يستقيل UITEXTVIEWS حالة المستجيب الأول عند استغلال الجزء الفارغ من الشاشة، والما هو نفسه بالنسبة ل 2 UITEXTFILD، Plus لهذه 2، فإن مفتاح الإرجاع يستقيل أيضا حالة المستجيب الأول. الكل 3 أعلن في واجهة.

أرغب في الحصول على محتويات كل هذه إلى nsstring الفردية و / أو تعلم كيفية دخولها مباشرة إلى شيء مثل:

NSString *urlstr = [[NSString alloc] initWithFormat:@"http://server.com/file.php?var1=%@&var2=%@&var3=%@", *content of UITextView*, *content of UITextField*, *content of UITextField*];

هذا سؤال أساسي للغاية، وأنا أعلم، لكنني مبتدئ جدا. إذا تعلمت كيفية القيام بذلك، فربما سأكون قادرا على التقاط من هناك.

في صحتك

(تحرير)

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

المحلول

uitextfield و uitextview كلاهما text خاصية يمكنك استخدامها لاسترداد قيم السلسلة. علي سبيل المثال،

NSString *string = [NSString stringWithFormat:@"%@, %@", textField.text, textView.text];

ضع في اعتبارك أنك تريد أن ترغب في فحص السلاسل للتأكد من أنها ليست فارغة أو تحتوي على أحرف غير صالحة قبل وضعها في عنوان URL.

نصائح أخرى

الإجابة المقبولة جيدة، أردت فقط إضافة ما يلي لإلقاء نظرة موسعة على نص الاستيلاء في نظام التشغيل iOS.

انظر textInRange: جوانب التعليمات البرمجية أدناه التي ابتكرتها لاستخدام وظيفة واحدة لتحديد النص سواء كان uitextfield أو uitextView أو أي فئة أخرى تتملك مع بروتوكول uitextinput.

//handle text container object length whether it's a UITextField, UITextView et al
NSUInteger LengthOfStringInTextInput(NSObject<UITextInput> *textContainer)
{
    UITextPosition *beginningOfDocument = [textContainer beginningOfDocument];
    UITextPosition *endOfDocument =       [textContainer endOfDocument];
    UITextRange    *fullTextRange =       [textContainer textRangeFromPosition:beginningOfDocument 
                                                                    toPosition:endOfDocument];
    return [textContainer textInRange:fullTextRange].length;
}

عن طريق تغيير نوع الإرجاع إلى NSSTRING وإزالة. الطول الذي يمكن أن يكون لديك وظيفة خاصية النص في أي فئة.

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