博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UIButton基本介绍
阅读量:7209 次
发布时间:2019-06-29

本文共 2544 字,大约阅读时间需要 8 分钟。

UIButton 就是一个按钮,他继承UIView 那么就来介绍一下
   1:初始化给大小:便利构造器:
   
//初始化         UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];      //设置 Button 的 frame      button.frame = CGRectMake(100, 100, 100, 100);      //设置背景      button.backgroundColor = [UIColor redColor];      //把他添加到 UIWindow上      [self.window addSubview:button];
  2.添加点击事件
// 设置button标题      [button setTitle:@"你点我啊" forState:UIControlStateNormal];      // 点击事件(添加方法)      [button addTarget:self action:@selector(buttonAction) forControlEvents:UIControlEventTouchUpInside]; //实现方法选择器里面的button响应事件- (void)buttonAction{    NSLog(@"你打我啊");}

  3.添加背景图片:

  [button setBackgroundImage:[UIImage imageNamed:@"11.png"] forState:UIControlStateNormal];   [button addTarget:self action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside];

  不同的点击图片改变(类似注册选择)

@property (nonatomic,assign)BOOL flag;

 添加点击事件的方法,传入一个参数,参数是这个事件的响应者,参数的类型,是响应者的类型;
- (void)buttonAction:(UIButton *)sender{
    if (self.flag == YES) {
        [sender setBackgroundImage:[UIImage imageNamed:@"22.png"] forState:UIControlStateNormal];
        self.flag = NO;
    }else{
        [sender setBackgroundImage:[UIImage imageNamed:@"11.png"] forState:UIControlStateNormal];
        self.flag = YES;}}
  4.外观控制
  ①:前景色图片
   注意:1 覆盖标题 2 不会随着buttonframe进行拉伸 3 前景图片必须是镂空图(好像只有线条的图片)
  (1):设置前景色图片:[button1 setImage:[UIImage imageNamed:@"55.png"] forState:UIControlStateNormal];
  (2):获取前景色图片:UIImage *image1 = [button1 imageForState:UIControlStateNormal];
  ②:背景色图片
  (1):设置背景色图片:[button1 setBackgroundImage:[UIImage imageNamed:@"11.png"] forState:UIControlStateNormal];
  (2):获取背景色图片:UIImage *image2 = [button1 backgroundImageForState:UIControlStateNormal];
  ③:标题
  (1):设置标题:[button1 setTitle:@"点我啊" forState:UIControlStateNormal];
  (2):获取标题: NSString *title = [button1 titleForState:UIControlStateNormal];
  (3):标题颜色:[button1 setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
  ④:阴影:[button1 setTitleShadowColor:[UIColor orangeColor] forState:UIControlStateNormal];
  ⑤:获取颜色:UIColor *color1 = [button1 titleColorForState:UIControlStateNormal];
  5.delegate
  三部步骤
    1,遵循协议,找到当前类(到AppDelegate.h文件中的尖括号+,UITextFieldDelegate)
    2,设置代理 操作谁,谁.delegate = self;
    3,实现代理方法
  代码实例:
  
//遵循协议@interface AppDelegate : UIResponder 
 
//设置代理对象.delegate = self;

 实现代理(UITextField为例)

- (BOOL)textFieldShouldReturn:(UITextField *)textField{    [textField resignFirstResponder];// 释放第一响应者    return YES;    // 实现代理方法注意:    //     1有返回值    //     2释放第一响应者}

 

这个就是 UIButton 的基本内容了!

转载于:https://www.cnblogs.com/yxfBlogs/p/4964971.html

你可能感兴趣的文章
webpack 热加载你站住,我对你好奇很久了
查看>>
Scala类型系统的目的——Martin Odersky访谈(三)
查看>>
Quarkus:一个Kubernetes原生Java框架
查看>>
Mozilla开发全新的公开网络API WebXR 来实现增强现实
查看>>
多形态MVC式Web架构:完成实时响应
查看>>
如何迅速分析出系统CPU的瓶颈在哪里?
查看>>
艰困之道中学到的经验教训
查看>>
Javaslang 3.0之路
查看>>
Spark Streaming中流式计算的困境与解决之道
查看>>
阿里巴巴收购以色列VR公司,大厂死磕VR为哪般?
查看>>
Oracle加快终止对以往Java版本的免费支持期
查看>>
[deviceone开发]-多种样式下拉菜单demo
查看>>
大规模集群中Docker镜像如何分发管理?试试Uber刚开源的Kraken
查看>>
百度举办第七届技术开放日,揭秘春晚红包技术支撑
查看>>
从图形到像素:前端图形编程技术概览
查看>>
必须知道的app测试与web测试的区别
查看>>
可信云认证累计达20项,腾讯云技术创新能力再获专业认可
查看>>
十周后,62%的PHP网站将运行在一个不受支持的PHP版本上
查看>>
战胜阿里和腾讯,Ripple已经获得200家跨境支付客户!
查看>>
推销自己的前端技术书籍
查看>>