1
在我的應用程序中,我需要限制用戶只在UITextView中輸入7行。當他嘗試輸入8行文本時,我們需要停止編輯並顯示警告消息。它通過使用獲取UITextView文本的CGSize工作正常。如何從iOS中的UITextView中獲取n行文字
但是,當用戶在UITextView中輸入文本時粘貼不允許,如果文本超過7行。根據要求我需要從文件夾中複製7行文本(複製&粘貼)到UITextView中。
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)string
{
NSString *temp = [textView.text stringByReplacingCharactersInRange:range withString:string]
CGSize size = [temp sizeWithFont:textView.font constrainedToSize:CGSizeMake(textView.frame.size.width,999) lineBreakMode:UILineBreakModeWordWrap];
int numLines = size.height/textView.font.lineHeight;
if (numLines <= 8)
{
return true;
}
//Alert
return false;
}
請幫我在這個問題上。 在此先感謝。
檢查委託方法。當用戶修改文本時,檢查行數,並刪減不需要的內容。 – Larme
感謝您的回覆@Larme。我將我的代碼寫入了shouldCharacterChange方法。但是我無法從NSString獲得7行文本。 –
你能告訴你你試過了什麼嗎? SO上有幾個問題要知道什麼尺寸會呈現「NSString」。 – Larme