首页 > 代码库 > UILabel,UITextField,UIButton

UILabel,UITextField,UIButton

@interfaceAppDelegate ()

{

    

       UIView *_containerView;

}

@end

不是一开始定义类的时候定义的实例变量,而是根据需求而定义的实例变量,统一定义在.m文件中的延展中,外界不可见


@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

    self.window = [[UIWindowalloc]initWithFrame:[[UIScreenmainScreen]bounds]];

    _containerView = [[UIViewalloc]initWithFrame:CGRectMake(0,0,320,568)];

    _containerView.backgroundColor = [UIColorclearColor];

    [self.windowaddSubview:_containerView];

    [_containerViewrelease];

   

   UIlabelios中开发用来显示文字的控件,UIview的子类,所以具有UIview的所有功能,还具有了可以显示文字的功能

    UILabel使用过程和UIview类似,也是分四步:

    1,创建对象

    2.配置属性

    3.添加到父视图

    4.释放所有权

   记住规律:不同的控件之间只是配置的属性的不同,也就是差异所在,所以学习一个新的控件时,只要配置该控件的独有属性即可

    UIView *views =  [[UIView alloc]initWithFrame:CGRectMake(52, 32, 55, 55)];

   views.backgroundColor = [UIColor redColor];

    [containerView addSubview:views];

    [views release];

    

   当在一个方法中要访问另外一个方法中定义的变局部量时,就把该变量定义为实例变量,或者在多个方法中想访问同一个变量

    self.window.backgroundColor = [UIColorwhiteColor];

    [self.windowmakeKeyAndVisible];

    returnYES;

}


       UILabel *label = [[UILabelalloc]initWithFrame:CGRectMake(110,50,20, 20)];

        

        label.backgroundColor = [UIColorgreenColor];

        label.text =@"hello beautiful gfafdsyryhre eyhrahjsaehtefdns";

        [_containerViewaddSubview:label];

        [labelrelease];

        2设置label上文字的大小

        (1)设置字体样式

        (2)设置字号

        systemFontOfSize:默认使用系统默认的字体,可以更改大小

       字体颜色

        label.layer.cornerRadius = 20;

        label.font = [UIFontsystemFontOfSize:25];

        label.font = [UIFontfontWithName:@"Arial-BoldMT"size:15];

        NSLog(@"%@",[UIFontfontNamesForFamilyName:@"Arial"]);

        NSLog(@"%@",[UIFontfamilyNames]);

       3字体颜色

        label.textColor = [UIColorblackColor];

        4设置文本的对齐方式

        label.textAlignment =NSTextAlignmentCenter;//(枚举类型的)

       5设置文本换行,如果不限制行数,将值设置为0

        label.numberOfLines =0;

        6换行的标准(文本的截取原则)

        label.LineBreakMode =NSLineBreakByCharWrapping;

        7.设置阴影的偏移量

        label.shadowOffset =CGSizeMake(5,0);//x轴偏移和往y轴偏移

        

        8.设置阴影的颜色

        label.shadowColor = [UIColorredColor];

    }



    UITextFiledUIControl的子类,UIControl又是UIView的子类,所以也是一个视图,只不过比UIView多了两个功能:(1)文字显示(2)文本编辑

    UITextField的使用步骤和UIView一样

    1,创建对象

   UITextField * field = [[UITextFieldalloc]initWithFrame:CGRectMake(50,50,220, 30)];

    2.配置属性

    field.backgroundColor = [UIColororangeColor];

    (1)设置field的边框样式

    field.layer.cornerRadius =10;


    field.borderStyle = UITextBorderStyleRoundedRect;

   (2)设置field默认显示的文字(但是不作为文本内容的一部分)(没有显示其他内容才有效)

    field.placeholder =@"请输入号码";

   (3)设置开始显示的文字(作为文本的一部分)

    field.text =@"我爱你";

    (4)设置文本的颜色

    field.textColor = [UIColorblackColor];

    (5)设置文本的对齐方式

    field.textAlignment =NSTextAlignmentCenter;

    

    (6)设置文本的字体

    field.font = [UIFontfontWithName:@"Arial-BoldMT"size:10];

    view.font = [UIFont fontWithName:@"Arial-BoldMT" size:15];

   (7)设置输入框是否可编辑

    field.enabled =YES;

   (8)设置当开始编辑时,是否清除输入框的内容

    field.clearsOnBeginEditing =YES;

   (9)设置密码模式,输入框中的内容是否以点得形式显示

    field.secureTextEntry =YES;

    (10)设置弹出键盘样式

    field.keyboardType = UIKeyboardTypeNumberPad;

    (11)键盘右下角显示的样式

    field.returnKeyType =UIReturnKeyGo;

field.clearButtonMode =UITextFieldViewModeNever;

UITextFieldViewModeAlways,不为空获得焦点与没有获得焦点都显示清空按钮
UITextFieldViewModeNever,不显示清空按钮
UITextFieldViewModeWhileEditing,不为空且在编辑状态时(及获得焦点显示清空按钮)
UITextFieldViewModeUnlessEditing, 不为空且不在编译状态时(焦点不在输入框上)显示清空按钮


   代理

   代理的使用步骤

    1.设置代理

    2.服从协议

   3实现协议中的方法

    field.delegate =self;

    

    (13)自定义视图

   UIView *view = [[UIViewalloc]initWithFrame:CGRectMake(0,0,20, 20)];

    view.backgroundColor = [UIColororangeColor];

    [_containerViewaddSubview:view];

    [viewrelease];

    field.inputView =view;

    3.添加到父视图c

    [_containerViewaddSubview:field];

    释放所有权

    [fieldrelease];

}


当点击键盘右下角return时会触发这个方法

- (BOOL)textFieldShouldReturn:(UITextField *)textField

{

   回收键盘,取消第一响应者

    [textField resignFirstResponder];

    NSLog(@"I miss you");

    returnYES;

}


    UIButtonUILabel,UItextField多出了一个能够让用户点击并且响应的功能(点击事件)

    UIButton也是视图,使用步骤和UILabel类似

    1创建对象

    UIButton *btn = [UIButtonbuttonWithType:UIButtonTypeSystem];

    2配置属性

    btn.frame =CGRectMake(50,400,220, 30);

    btn.backgroundColor = [UIColorgreenColor];

    


    添加到父视图

    [_containerViewaddSubview:btn];

    设置圆角

    btn.layer.cornerRadius =10;

    button添加点击事件

    target执行action方法,ControlEvent事件发生之后

    click后面的参数:谁调用addTarget:action:方法,参数就是谁,所以参数只能有一个

    [btn addTarget:selfaction:@selector(click:)forControlEvents:UIControlEventTouchUpInside];

    button设置文字

    [btn setTitle:@"hgalk"forState:UIControlStateNormal];

    NSString *str = btn.titleLabel.text;(btn.titleLabel.text,只读,只能获取按钮上的文本,不能修改)

    NSString *str1 = btn.currentTitle;


    改变文字颜色

    [btn setTitleColor:[UIColorlightGrayColor]forState:UIControlStateNormal];

    [btn release];

-(void)click:(UIButton *)btn

{

   NSLog(@"%@",btn);

    NSLog(@"聪雷大成街类");

}



}

 

UILabel,UITextField,UIButton