UILabel
- (void)createLabel{
//使用過程和UIView很相似 也是分爲四個步驟:
//1.創建對象
//2.配置屬性
//3.添加父視圖
//4.釋放所有權
//規律:不同的控件之間只是配置的屬性不同,在原有的控件屬性基礎上添加新的控件屬性,記憶新的控件的屬性即可.
//創建label對象 這裏可以使用UIView的方法
UILabel *bLabel = [[UILabel alloc]initWithFrame:CGRectMake(50, 200, 220,90)];
//設置lable上顯示的文字 text
bLabel.text = @"hello world,I am is a boy and I like beautiful gril !";
//設置label上顯示文字的大小
//1.設置字體 font
//2.設置字號 systemFontOfSize:類方法 類是:UIFont 默認使用系統字體樣式
bLabel.font = [UIFont systemFontOfSize:25];
//獲取家族中所有家族字體的樣式 familyNames 類方法 類是:UIFont
NSLog(@"所有字體:%@",[UIFont familyNames]);
//獲取家族中某一字體的子字體名字fontNamesForFamilyName: 類方法 類是:UIFont
NSLog(@"Oriya Sangam MN家族的名字:%@",[UIFont fontNamesForFamilyName:@"Oriya Sangam MN"]);
//設置字體樣式和大小 fontWithName:@ " "size:數字即可 類方法 類是:UIFont
bLabel.font = [UIFont fontWithName:@"OriyaSangamMN-Bold" size:15];
//設置字體顏色 使用的是 textColor 改變字體的顏色 可以是系統提供任意顏色
bLabel.textColor = [UIColor redColor];
//設置對齊樣式 textAlignment 枚舉值 從0開始到4結束 五種樣式 可視使用0~5來表示 常用的是:1左2右3居中
bLabel.textAlignment = NSTextAlignmentCenter;
//設置換行 numberOfLines 如果不限制行數 將值設置爲0 系統能夠根據UILabel的大小和字體大小自動進行適配和分行
bLabel.numberOfLines = 0;
//換行的文本原則 lineBreakMode (文本的截取標準) 自己設置要分爲幾行系統會根據行數來分配
bLabel.lineBreakMode = 3;
//設置陰影的偏移量 -左-上 +右+下 注意座標右下爲正
bLabel.shadowOffset = CGSizeMake(-5, -5);
//設置偏移的顏色
bLabel.shadowColor = [UIColor blueColor];
//設置背景顏色 backgroundColor 如果和我們設置的幕布的顏色一樣此時可以省略,也可以設爲clearColor 當然也可以設置爲幕布的顏色.
bLabel.backgroundColor = [UIColor greenColor];
//設置圓角
bLabel.layer.cornerRadius = 6;
//將視圖的多餘部分切掉 masksToBounds
bLabel.layer.masksToBounds = YES;
//添加到containerview
[_conainerView addSubview:bLabel];
[bLabel release];
}
UITextField
- (void)createUITextField{
//UITextField 輸入框 是控制文本輸入和顯示的控件 在UILabel基礎上增加了輸入編輯文字功能
//UITextField是UIControl的子類UIControl又是UIView的子類所以也是視圖,只不過比UIView多了功能:(1)文字顯示 (2)文本編輯 (3)外觀配置
//創建UITextField對象aTextField
UITextField *aTextField = [[UITextField alloc]initWithFrame:CGRectMake(50, 50, 200, 30)];
//設置背景顏色 如果不寫和父視圖一樣
aTextField.backgroundColor = [UIColor yellowColor];
//除了UILabel有的屬性外自己的獨有屬性
//(1)設置邊框樣式 border(邊框)Style(樣式) 枚舉 四種樣式 最常用的是:圓形邊框UITextBorderStyleRoundedRect
aTextField.borderStyle = UITextBorderStyleRoundedRect;
//(2)設置輸入框默認提示的文字 placeholder佔位符 (但不作爲輸入框的一部分)當輸入其他字時,框內的會自動清除
aTextField.placeholder = @"郵箱/手機號碼/用戶名";
//(3)設置開始顯示的文字 和placeholder不同之處是:輸入其他文字時不會清除
aTextField.text = @"郵箱/手機號碼/用戶名";
//(4)設置文本顏色textColor
aTextField.textColor = [UIColor redColor];
//(5)設置文本的對齊方式textAlignment 同label的樣式一樣
aTextField.textAlignment = NSTextAlignmentLeft;
//(6)設置字體大小和樣式 font
aTextField.font = [UIFont fontWithName:@"OriyaSangamMN-Bold" size:15];
//(7)設置輸入框是否可用enabled 默認的是YES
aTextField.enabled = YES;
//(8)設置當開始編輯時是否清除輸如框中的內容 clearsOnBeginEditing 默認值是YES
aTextField.clearsOnBeginEditing = YES;
//(9)設置密碼模式,輸入框中的內容是否以點顯示secureTextEntry默認值是YES
aTextField.secureTextEntry = YES;
//(10)設置彈出鍵盤的樣式 keyboardType 枚舉類型 一共是12種格式
aTextField.keyboardType = UIKeyboardTypeNumberPad;
//(11)將鍵盤右下角的顯示樣式 go
return 等 枚舉類型
aTextField.returnKeyType = UIReturnKeyGo;
//(12)將鍵盤不使用了就放回使用代理 當觸發go
return search時進行執行代理模式
//代理的使用步驟
//1.設置代理
aTextField.delegate = self;
//2.服從協議
/**在.h文件裏服從協議
*@interface LGYAppDelegate : UIResponder <UIApplicationDelegate,UITextFieldDelegate>
服從多個協議 中間用逗號間隔 在尖括號裏寫上需要服從的協議的名稱.
UITextFieldDelegate 對於UITextField類需要服從
*/
//3.實現代理中的協議
/*當點擊鍵盤的右下角的go或者return按鈕時會觸發 即:觸發時機
- (BOOL)textFieldShouldReturn:(UITextField *)textField{
//回收鍵盤就這一行代碼 記住了
[textField resignFirstResponder];
NSLog(@"執行了");來判斷這個協議是否執行
return YES;
}
UIButton
- (void)createUIButton{
//響應用戶點擊的控件 具有讓用戶點擊並且響應的功能 UIButton也是視圖,使用的具體步驟和UILabel類似
//1.創建對象 便利構造器 父類是UIControl 也可以使用初始化的方法 initWithFrame:CGRectMake:(x,y,width,heigth)
UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];
button.frame = CGRectMake(50,200 ,220, 30);
//(1)設置背景顏色 backgroundColor
button.backgroundColor = [UIColor redColor];
//(2)設置圓角
button.layer.cornerRadius = 10;
//(3)給button添加點擊事件<#(SEL)#>方法選擇器 UIControlEventTouchUpInside
//讓target執行action方法來執行,在ControlEvents
[button addTarget:self action:@selector(click:) forControlEvents:UIControlEventTouchUpInside];
//(4)給button設置文字
[button setTitle:@"點擊我" forState:UIControlStateNormal];
//(5)改變字體顏色
[button setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
//3.添加父類視圖 因爲使用的是便利構造器的方法 所以不需要release操作. 但如果是使用的初始化的方法就要使用release操作 內存管理:有加就有減,沒加就不要減
[_conainerView addSubview:button];
}