zoukankan      html  css  js  c++  java
  • iOS开发之通过代码自定义一个控件

    关于控件的继承关系(面试重点):

    1)所有的控件都继承自UIView

    2)能监听事件的都是先继承自UIControlUIControl再继承自UIView。比如UIButton

    3)能整体滑动的都是继承自UIScrollViewUIScrollView再继承自UIView。比如UITableView

    4UIWindow也是继承自UIView

    首先,创建控件的代码要写在

    - (void)viewDidLoad{

    };

    中,这个方法是在view被创建完毕后执行的方法。

    1、创建按钮

    UIButton *btn = [[UIButton alloc] init];

    2、将按钮添加到view中

     [self.view addSubview:btn];

    3、设置frame(设置控件的位置和大小)

    btn.frame = CGRectMake(50, 50, 100, 100);

     4、设置背景图片

    (1)通过文件名加载图片(凡是PNG图片,都不用加拓展名)

    UIImage *normal = [UIImage imageNamed:@"btn_01"];

    (2)设置普通状态下的背景图片

    [btn setBackgroundImage:normal forState:UIControlStateNormal];

    (3)加载高亮的图片

    UIImage *high = [UIImage imageNamed:@"btn_02"];

    [btn setBackgroundImage:high forState:UIControlStateHighlighted];

    5、设置文字

     [btn setTitle:@"点我啊" forState:UIControlStateNormal];

     [btn setTitle:@"摸我干啥" forState:UIControlStateHighlighted];

    6、设置文字颜色

    [btn setTitleColor:[UIColor redColor] forState:UIControlStateNormal];

    [btn setTitleColor:[UIColor blueColor] forState:

    UIControlStateHighlighted];

    7、监听按钮点击

    [btn addTarget:self action:@selector(btnClick:) forControlEvents:

    UIControlEventTouchUpInside];

    【备注】*可以通过tag找到一个控件,例如:

    UIButton *button = (UIButton *)[self.view viewWithTag:10];

    由于[self.view viewWithTag:10]的返回值为UIView所以需要加上(UIButton *)强制转换为UIButton。

    *对于监听按钮点击

    [btn addTarget:self action:@selector(btnClick:) forControlEvents:

    UIControlEventTouchUpInside];

    addTarget的参数代表哪一个view,action代表这个view中的哪个方法。

  • 相关阅读:
    当下流行的分布式文件系统大阅兵
    smb相关资料
    Linux下将多个静态库(.a)合并成一个静态库文件(.a)的命令操作,方法一
    IBInspectable的使用
    iOS开发拓展篇——如何把项目托管到GitHub
    iOS开发拓展篇-XMPP简单介绍
    iOS开发拓展篇—应用之间的跳转和数据传递
    使用NSURLSession获取网络数据和下载文件
    李洪强实现横向滚动的View<二>
    李洪强实现横向滚动的View<一>
  • 原文地址:https://www.cnblogs.com/lifengfneg/p/4773804.html
Copyright © 2011-2022 走看看