黑马程序员--UI的基本控件使用之UILabel与UIButton的基本操作

------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------       

  学习UI,是一种乐趣,当看到虚拟机中显示出来的东西和手机某个应用类似的时候,我就迫不及待的要学习下一个模块,想要尽快的做出我心目中的它,它不是娃娃,却比娃娃更有吸引力!哈哈,开个玩笑!什么?你根本没看懂?快哭了好了,废话不提了,依旧代码中加注释,展示最基本的UI控件!

首先是UILabel(标签控件),当你想要在手机的某个地方加入你的人生格言,想要告诉用户该做什么事情,就是显示一段话的时候就可以用它!我第一次看见这个控件的时候就想,它可以作为日记本里每天的标题显示!当然了,我感觉这要用到单例的事情了。

//    UILabel *label =[[UILabel alloc]initWithFrame:CGRectMake(10
//                                                            , 30,300, 30)];
//    label.text=@"标签";
//    label.textColor=[UIColor blueColor];
//    label.backgroundColor=[UIColor clearColor];//标签背景透明色
//    label.textAlignment=NSTextAlignmentCenter;//文字对齐方式
//    label.font=[UIFont boldSystemFontOfSize:20];//文字加粗
//    label.font=[UIFont italicSystemFontOfSize:20];//文字倾斜,但会覆盖文字加粗
//    //特殊字体,首先变例自体库
//    NSArray *names=[UIFont familyNames];
//    for (NSString *name in names) {
//        NSLog(@"%@",name);//喜欢什么字体设置设置什么,每设置一个都会覆盖前一个
//    }
//    label.font=[UIFont fontWithName:@"Smallcaps" size:20];
//    label.shadowColor=[UIColor yellowColor];//阴影d背景颜色
//    label.shadowOffset=CGSizeMake(-3, -3);//阴影d的偏移量(宽度(向右),高度(向下))
//    
//    label.highlighted=YES;//高亮颜色,跟随高亮颜色变化
//    label.highlightedTextColor=[UIColor orangeColor];//高亮颜色
//    
//    label.adjustsFontSizeToFitWidth=YES;//根据label宽度自动设置大小
//    
//    
//    
//    UILabel *label1=[[UILabel alloc]initWithFrame:CGRectMake(10, 60, 300, 100)];//(左边线距离,上边线距离, ,)
    label1.text=@"标签2标签2标签2标签2标签2标签2标签2标签2标签2标签2";
//    label1.text=@"faiofhueioafiao;fihaeoihfiueajofih;aeofiuheaioufh;iaewo;fhoia;fhuioehwafu;huahueafo;huaeow";
//
//    label1.baselineAdjustment=UIBaselineAdjustmentAlignCenters;//与基线对齐方式,当只有一行内容时有效
//    label1.textAlignment=NSTextAlignmentCenter;
//    label1.textColor=[UIColor greenColor];
//    label1.numberOfLines=0;//如果值为零,是不限制使用行数
//    label1.lineBreakMode=NSLineBreakByCharWrapping;//设置内容超出时模式,,wordwrapping时默认模式,以单词为单位换行,以单词为单位截断
//    
//    
//    UILabel *label3=[[UILabel alloc]initWithFrame:CGRectZero];
//    label3.text=@"标签3标签3标签3标签3标签3标签3标签3标签3标签3标签3标签3标签3标签3标签3标签3标签3标签3标签3标签3";
//   //设置frame,
//    //计算label大小
//    CGSize size=[label3.text sizeWithFont:label3.font constrainedToSize:CGSizeMake(300, 10000) lineBreakMode:NSLineBreakByWordWrapping];//(宽(不能比label宽),高)
//    label3.numberOfLines=0;
//    //
//    label3.frame=CGRectMake(10, 310, size.width, size.height);
//    label3.textAlignment=NSTextAlignmentCenter;
    
    UIButton *btn1=[UIButton buttonWithType:UIButtonTypeRoundedRect];
    btn1.frame=CGRectMake(10, 30, 300, 30);
    btn1.backgroundColor=[UIColor redColor];


接下来就是另一个特别常用的控件—UIButton

这块除了要记住基本的操作之外,令一个重点就是addTarget这个触发事件的应用,因为后面基本离不开它(初学者的看法)!前面的myclass可以换成self,那就是用自己的类方法。

[btn1 addTarget:myclass action:@selector(report) forControlEvents:UIControlEventTouchUpInside]

//   Myclass *myclass=[[Myclass alloc]init];
    UIButton *btn1=[UIButton buttonWithType:UIButtonTypeRoundedRect];
    btn1.frame=CGRectMake(10, 30, 300, 30);
   // btn1.backgroundColor=[UIColor greenColor];
    [btn1 setTitle:@"谁是sb" forState:UIControlStateNormal];
    [btn1 setTitle:@"吴亚楠是sb" forState:UIControlStateHighlighted];
    [btn1 setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];//设置表浅颜色
    [btn1 setTintColor:[UIColor purpleColor]];//设置高亮状态下颜色
    
//设置点击事件----target执行某一个对象中的方法
    //action要执行d方法名
    //controlevent触发事件的方法
   [btn1 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
    
    
    UIButton *btn2=[UIButton buttonWithType:UIButtonTypeContactAdd];
    btn2.frame=CGRectMake(10, 100, 300, 30);
    btn2.backgroundColor=[UIColor whiteColor];
    [btn2 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
    
    Mybutton *btn3=[Mybutton buttonWithType:UIButtonTypeCustom];
    btn3.frame=CGRectMake(30, 40, 400, 500);
    btn3.backgroundColor=[UIColor redColor];
    [btn3 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
    btn3.adjustsImageWhenHighlighted=YES;
//设置背景图片
    [btn3 setBackgroundImage:[UIImage imageNamed:@"abc.png"]forState:UIControlStateNormal];//(这种不会变形)
    [btn3 setImage:[UIImage imageNamed:@"bc.png" ] forState:UIControlStateNormal];//会自动充满按钮
    
    //设置标题文字
    [btn3 setTitle:@"自定义按钮" forState:UIControlStateNormal];
    
    
   // [btn1 addTarget:myclass action:@selector(report) forControlEvents:UIControlEventTouchUpInside];
    btn1.showsTouchWhenHighlighted=YES;
    //设置标签属性
    btn1.tag=1;
    btn2.tag=2;
    btn3.tag=3;
    [self.window addSubview:btn1];
    [self.window addSubview:btn2];
    [self.window addSubview:btn3];
    self.window.backgroundColor = [UIColor greenColor];
    [self.window makeKeyAndVisible];
    
    return YES;
}

-(void)btnClick:(id)sender
{
    UIButton *btn=(UIButton *)sender;
    if (btn.tag==1) {
        NSLog(@"圆角按钮被点击");
    }else if(btn.tag==2){
        NSLog(@"加号按钮被点击");
    }else if(btn.tag==3){
        NSLog(@"自定义按钮");
    
    }
 
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值