zoukankan      html  css  js  c++  java
  • IOS-UI基础-按钮扩展

    按钮的状态

    Default 普通/默认状态

    Highlighted 高亮状态

    如果按钮被点击, 就会自动的切换到高亮状态

    Selected 选中状态

    通过设置 selected = YES 的时候表示按钮被选中

    Disabled 禁用状态

    通过设置  enabled = NO 表示禁用状态, 一旦被禁用, 就不会响应任何点击事件

    backgroundImage 按钮有多大, 图片就会显示多大

    image  图片有多大, 按钮就会被撑到图片的大小

    如果同时设置了 tile  backgroundImage : 文字 显示到  图片的正上方

    如果同时设置了 title  image     : 图片在左侧, 文字在右侧

    如果设置 button 的 title , image , backgroundImage 的时候, 一定要分状态设置

    坐标系概念

    frame : 是控件以父view的左上角 为坐标原点 

    bounds : 是控件以自身的左上角为坐标原点, 一般 x = 0, y = 0

    center : 是控件以父view的左上角为坐标原点 x, y 

    不能直接修改对象的结构体的成员变量

    通过复制 粘贴得到控件, 需要把之前的连线给清除掉

    // 使用这种方式定义枚举

    typedef NS_ENUM(NSInteger, ZBDirection) {

        ZBDirectionUp,

        ZBDirectionDown,

        ZBDirectionLeft,

        ZBDirectionRight

    };

    //**********************

    两种动画方式

    1. 首尾式动画

    // 开始动画

         [UIView beginAnimations:nil context:nil];

         // 执行动画的操作

         

         // Duration 持续时间

         #warning  要放到执行动画操作代码的前面才会生效

         [UIView setAnimationDuration:0.5];

         

         self.zbButton.frame = tempFrame;

         

         // 提交动画

         [UIView commitAnimations];

         2. block 动画 (重点掌握 block动画)

         [UIView animateWithDuration:0.5 animations:^{

            // 放置 执行动画的操作

            self.zbButton.frame = tempFrame;

        }];

    button的实例化方式

      buttonWithType:

         

         initWithFrame: UI控件独有的实例化方法

         init : 所有的对象 都具有的实例化方法

    为button设置背景图片

    IImage *image = [UIImage imageNamed:@"btn_01"];

        

    [button setBackgroundImage:image forState:UIControlStateNormal];

    /**

         button : 要添加监听方法的按钮

         Target : 监听者

         action : 当按钮被点击的时候监听者要执行的方法

         forControlEvents : 触发点击的 事件

         */

        [button addTarget:self

                   action:@selector(didClickButton:)

         forControlEvents:UIControlEventTouchUpInside];

    stroryboard : 隐藏了很多细节

    纯代码 : 可以很方便的做修改及调试

  • 相关阅读:
    50个必备的实用jQuery代码段
    js前台改变服务器控件的disable的属性,后台获取不到值
    什么是线程安全?
    解决用JS修改服务器端控件值后在后台无法获取修改后值的问题
    C# 集合类 :(Array、 Arraylist、List、Hashtable、Dictionary、Stack、Queue)
    ASP.NET MVC生命周期介绍
    求一段CSS样式代码;要求是Table的标签样式,实现Table标签奇数行显示一个颜色;偶数行显示另外一种颜色
    JavaScript中Date.parse 函数用法
    sql 获取 一列的值显示一行
    超强 css 实现 table 隔行 ,隔列 换色
  • 原文地址:https://www.cnblogs.com/DreamLinku/p/5389334.html
Copyright © 2011-2022 走看看