IOS控制項之UITextField用法及注意點

2021-07-14 16:34:55 字數 2884 閱讀 3628

主要總結工作中常用到的ui控制項的屬性,同時使用應注意的地方以及工作中常犯錯誤,進行了總結.若有不屬性的,可自己自己做demo看一下效果

//初始化方法

uitextfield *tf = [[uitextfield alloc]initwithframe:cgrectmake(x, x, x, x)]

//設定邊框樣式

tf.borderstyle = uitextborderstyleroundedrect;

typedef enum uitextborderstyle;

//設定背景顏色,此時設定為白色 如果使用了自定義的背景邊框會被忽略掉 

ft.backgroundcolor = [uicolor whitecolor];

//設定輸入框內容的字型樣式和大小

設定 font 屬性

//設定字型顏色

ft.textcolor = [uicolor redcolor];

//輸入框中是否有個叉號,在什麼時候顯示,用於一次性刪除輸入框中的內容

ft.clearbuttonmode = uitextfieldviewmodealways;

typedef enum uitextfieldviewmode;

//密文輸入

ft.securetextentry = yes;

//是否糾錯

ft.autocorrectiontype = uitextautocorrectiontypeno;

typedef enum uitextautocorrectiontype;

//再次編輯就清空

ft.clearsonbeginediting = yes;

//內容對齊方式

ft.textalignment = uitextalignmentleft;

//內容的垂直對齊方式 uitextfield繼承自uicontrol,此類中有乙個屬性contentverticalalignment

ft.contentverticalalignment = uicontrolcontentverticalalignmentcenter;

//設定為yes時文字會自動縮小以適應文字視窗大小.預設是保持原來大小,而讓長文字滾動 

tf.adjustsfontsizetofitwidth = yes;

//設定自動縮小顯示的最小字型大小

ft.minimumfontsize = 20;

//文字框右側 小的清除按鈕

typedef enum uitextfieldviewmode;

// 佔位文字

tf.placeholder = @」******」;

// 預設顯示文字

tf.text = @」***」;

// 背景

通過給 background 屬性賦值

** 若設定背景是自定義邊框型別的,要講textfield 的邊框演示設定為 uitextborderstylenone,否則自定義邊框有可能不起作用

//右側增加

uiimageview *image=[[uiimageview alloc] initwithimage:[uiimage imagenamed:@」***xx」]];

ft.rightview=image;

ft.rightviewmode = uitextfieldviewmodealways;

// 左側增加 則設定 leftview 屬性

**這裡要注意,預設leftview 和 rightview 是不顯示的,要同時設定leftviewmode和rightviewmode.

**若在乙個控制器中設定不同文字的 leftview 和 rightview ,一定要例項化不同的 物件,不能講乙個 物件給不同的 文字框使用. 否則,會出現多個 文字框爭奪同乙個資源,導致程式異常.

// 對齊方式

tf.textalignment = typedef ns_enum(nsinteger, nstextalignment)

// 自定義輸入鍵盤樣式

修改屬性 inputview

// 自定義鍵盤演示工具條

修改屬性inputaccessoryview

//首字母是否大寫

ft.autocapitalizationtype = uitextautocapitalizationtypenone;

typedef enum uitextautocapitalizationtype;

//return鍵變成什麼鍵

ft.returnkeytype =uireturnkeydone;

typedef enum uireturnkeytype;

//鍵盤型別

tf.keyboardtype = typedef ns_enum(nsinteger, uikeyboardtype) ;

通知常用常用的監聽屬性:

uitextfieldtextdidbegineditingnotification

uitextfieldtextdidchangenotification

uitextfieldtextdidendeditingnotification

當文字字段退出編輯模式時觸發。通知的object屬性儲存了最終文字。

與之對應的當文字狀態發生變化時,常用的鍵盤監聽屬性:

uikeyboardwillshownotification  //鍵盤將要出現時傳送通知

uikeyboarddidshownotification  //鍵盤彈出後傳送通知

uikeyboardwillhidenotification  //鍵盤將要隱藏時傳送通知

uikeyboarddidhidenotification  //鍵盤隱藏之後傳送通知

iOS可復用控制項之調節控制項

效果 實現 htadjustview.h import inte ce htadjustview uiview 設定名稱 當前值 單位 上限值 下限值 void setname nsstring name value cgfloat value unit nsstring unit maxvalue...

iOS學習之UIPickerView控制項的簡單使用

uipickerview控制項在給使用者選擇某些特定的資料時經常使用到,這裡演示乙個簡單的選擇資料,顯示在uitextfield輸入框裡,把uipickerview作為輸入view,用 作為選定資料的按鈕。和其他uitableview控制項相似,uipickerview也需要資料來源。我們要實現的效...

IOS控制項學習之UILabel

ios的uilabel我個人覺得很弱智,居然只有橫向設定而沒有豎向設定文字位置,這讓我很糾結。先看效果 1.新建專案 2.編輯 viewcontroller.m檔案 void viewdidload 3.自定義uilabelex 控制項 1 uilabelex.h import 定義乙個列舉型別,頂...