OC中修改 对象的结构体属性

来源:互联网 发布:b2b商城app源码 编辑:程序博客网 时间:2024/06/05 16:46

//        self.icoButton.frame.origin.x = 3; 无法修改

    

    //OC中不允许直接修改对象的结构体属性成员

    //但是允许修改结构体属性的成员

    //如果要修改对象的结构体属性需要三个步骤

//枚举类型本质上是整数定义的时候,如果之定义了一个数值,后续的数值会一次递增

//枚举类型是解决魔法数据比较常用的

typedef enum{

    kMovingDirTop= 10,

    kMovingDirBotton,

    kMovingDirLeft,

    kMovingDirRight,

}kMovingDir;

#define kMovingDelta 20.0


@implementation ViewController


- (IBAction)move:(UIButton *)sender {

    //让重复的代码只出现一次

    CGRect frame = self.icoButton.frame;

    //根据按钮的类型来判断移动的方向

    switch (sender.tag) {

        casekMovingDirTop:

               frame.origin.y -=kMovingDelta;

            break;

        casekMovingDirBotton:

               frame.origin.y +=kMovingDelta;

            break;

        casekMovingDirLeft:

               frame.origin.x -=kMovingDelta;

            break;

        casekMovingDirRight:

               frame.origin.x +=kMovingDelta;

            break;

    }

    self.icoButton.frame = frame;

}



0 0
原创粉丝点击