मैं अपने स्वयं के कीबोर्ड को इमोजीस को लागू करने की कोशिश कर रहा हूं। इस उद्देश्य के लिए मैं कर्सर की स्थिति में इमोजी डाल रहा हूं।uitextfield positionFromPosition: ऑफसेट काम नहीं कर रहा है emojis
यह ठीक काम करता है अगर UITextField में कोई 4-बाइट इमोजी वर्ण मौजूद नहीं हैं। अन्यथा ऐप दुर्घटनाग्रस्त हो जाता है।
मैं यहां सम्मिलन कोड पोस्ट कर रहा हूं। क्या कोई इस मुद्दे को हल करने का तरीका बता सकता है?
UITextField *field = self.textField;
UITextRange *range = field.selectedTextRange;
int pos = [field offsetFromPosition:field.beginningOfDocument toPosition:range.end];
NSString * firstHalfString = [field.text substringToIndex:pos];
NSString * secondHalfString = [field.text substringFromIndex:pos];
field.text = [NSString stringWithFormat: @"%@%@%@", firstHalfString, emoticon, secondHalfString];
UITextPosition *newPos = [field positionFromPosition:field.beginningOfDocument offset:pos + 1];
field.selectedTextRange = [field textRangeFromPosition:newPos toPosition:newPos];
इस लाइन शून्य अगर वहाँ पाठ में emojis हैं रिटर्न:
UITextPosition *newPos = [field positionFromPosition:field.beginningOfDocument offset:pos + 1];
धन्यवाद! यह एक ऐसी समस्या है, लेकिन यह मेरे बाहर नरक परेशान था। –