由於uitextview沒有設定行距的方法,所以我們要在uitextview有變化的時候隨時改變固定uitextview的行距,而且每當我們輸入的是中文的時候,需要判斷我們輸入的是拼音還是中文再來改變行距,因此我們可以嘗試下面的方法:
1、.h檔案我們必須先加上 uitextviewdelegate的**
2、.m檔案我們就使用下面方法
- (void
) viewdidload ;
ttextview.
attributedtext
= [[
nsattributedstring
alloc
] initwithstring
:@"內容"
attributes
:attributes];
// [ttextview settext:s_default_fk];
// [ttextview setfont:[uifont fontofsize:14.f]];
[ttextview
settextcolor
:[uicolor
hexcolor
:@"aaaaaa"
]];
[ttextview
setshowshorizontalscrollindicator:no
]; [ttextview
setshowsverticalscrollindicator:no
]; [tview
addsubview
:ttextview];
ttextview.
returnkeytype
= uireturnkeydone;
// [ttextview becomefirstresponder];
_ttextview
= ttextview;
[[nsnotificationcenter
defaultcenter
]addobserver
:self
selector
:@selector
(textfilededitchanged:)
name
:@"uitextfieldtextdidchangenotification"
object
:_ttextview];
} -(void
bool
)animated
#define kmaxlength 20
-(void
)textfilededitchanged:(
nsnotification
*)obj;
_ttextview
.attributedtext
= [[
nsattributedstring
alloc
] initwithstring
:_ttextview
.text
attributes
:attributes]; }
// 有高亮選擇的字串,則暫不對文字進行統計和限制
else }
// 中文輸入法以外的直接對其統計限制即可,不考慮其他語種情況
// else
// } }
#pragma mark - -------- uitextviewdelegate ----------
- (bool
)textviewshouldbeginediting:(
uitextview
*)textview
return
yes; }
-(bool
) textview:(
uitextview
*)textview shouldchangetextinrange:(
nsrange
)range replacementtext:(
nsstring
*)text
returnno;
}return
yes; }
@end
IOS UITextView自適應高度
在uitextview的textchanged事件響應 裡計算輸入內容的高度,然後如果高度與文字變化前比起來有變化,則修改uitextview的高度為這個新的高度。這看起來很簡單。新增內容變化的通知響應事件 nsnotificationcenter defaultcenter addobserver...
IOS UITextView自適應高度
在uitextview的textchanged事件響應 裡計算輸入內容的高度,然後如果高度與文字變化前比起來有變化,則修改uitextview的高度為這個新的高度。這看起來很簡單。新增內容變化的通知響應事件 nsnotificationcenter defaultcenter addobserver...
IOS UITextView實現自動隱藏鍵盤
不講原理。只講操作。三 步 設定 text input traits return key 為done 去掉auto enable return key 選中狀態。建立乙個類為 inte ce boardreturn nsobject end implementation boardreturn b...