UITextView的基本用法

2021-07-09 17:20:46 字數 2130 閱讀 9604

這裡我們來了解uitextview的基本屬性和**方法 /*

繼承 uiscrollview

和 uitextfield 屬性基本相同*/

首先宣告屬性

@property (nonatomic, strong) uitextview *textview;

// 初始化

self.textview = [[uitextview alloc] initwithframe:cgrectmake(10, 50, cgrectgetwidth([uiscreen mainscreen].bounds) - 20, 36)];

// 文字

self.textview.text = @"請輸入內容";

// 設定文字的顏色 字型

self.textview.textcolor = [uicolor blackcolor];

self.textview.font = [uifont systemfontofsize:20];

// 設定圓角

self.textview.layer.maskstobounds = yes;

self.textview.layer.cornerradius = 5;

// 設定是否可以滑動

self.textview.scrollenabled = yes; // 預設 yes

// 背景顏色為灰色

self.textview.backgroundcolor = [uicolor graycolor];

[self.view addsubview:self.textview];

// 指定**

self.textview.delegate = self;

下面我們來看一下uitextview的**方法:記得一定要引入協議

// 開始編輯

- (void)textviewdidbeginediting:(uitextview *)textview;

結束編輯

- (void)textviewdidendediting:(uitextview *)textview;

編輯發生改變

- (void)textviewdidchange:(uitextview *)textview;

焦點發生改變

- (void)textviewdidchangeselection:(uitextview *)textview;

我們都知道uitextfield有個屬性就是placeholder 就是開始輸入的時候的提示文字 但是uitextview沒有 下面的方法就是來實現這個功能

// 開始編輯的時候

- (void)textviewdidbeginediting:(uitextview *)textview

nslog(@"開始編輯");

}// 結束編輯

- (void)textviewdidendediting:(uitextview *)textview

nslog(@"結束編輯");

}// 這個方法實現了鍵盤的**(但是前提是你不需要換行)你也可以加乙個按鈕來實現這一功能

- (bool)textview:(uitextview *)textview shouldchangetextinrange:(nsrange)range replacementtext:(nsstring *)text

return yes;}

// textview的自適應高度

- (void)textviewdidchange:(uitextview *)textview;

cgrect rect = [textview.text boundingrectwithsize:constraintsize options:nsstringdrawingusesfontleading|nsstringdrawinguseslinefragmentorigin attributes:dic context:nil];

//    // 重新調整textview的高度

textview.frame = cgrectmake(textview.frame.origin.x,textview.frame.origin.y,textview.frame.size.width,rect.size.height + 12);

}

iOS關於UITextView的基本用法屬性和協議

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 void ui pragma mark u...

iOS關於UITextView的基本用法屬性和協議

void ui pragma mark uitextviewdelegate協議中的方法 將要進入編輯模式 bool textviewshouldbeginediting uitextview textview 已經進入編輯模式 void textviewdidbeginediting uitext...

UITextView的那些坑

坑1 ios7及以上的版本上,uitextview出現這樣的問題 彈出鍵盤時,沒輸入任何文字,但是游標位置不是在最上方。解決方案 ios7以後新增了乙個屬性automaticallyadjustsscrollviewinsets,將其置為no即可。別忘了加版本判斷。if ios7 and later...