坐标与按钮结合的一些简单功能2

来源:互联网 发布:php获取网页源码 编辑:程序博客网 时间:2024/05/14 05:58

     


- (IBAction)right:(id)sender {

    CGRect orx =self.btn.frame;

    orx.origin.x +=10;

    self.btn.frame = orx;

}//CGRect是结构体类型,要修改对象结构体里面某个变量的值的时候必须先拿到原来的  给新的 改变新的 然后将它赋值给原来的 不能直接修改 如这是错误的 self.btn.frame.origin.x = 10; 这是不行的

//向左边平移,要现将该图片的x,y获得并赋值给一枚举型cgrect orx ,通过orx 改变值之后再将 它赋值给该图片的frame,并不是直接的frame.x等


放大和缩小行为

- (IBAction)enlarge:(id)sender {

    CGRect ori =self.btn.frame;

    

    ori.size.width +=10;

    ori.size.height +=10;

    

    self.btn.frame = ori;

}


- (IBAction)reduce:(id)sender {//1

    CGRect ori =self.btn.frame;

    ori.size.width -=10;

    ori.size.height -=10;

    self.btn.frame = ori;   //  2

 CGRect ori =self.btn.frame;

    ori.size =CGSizeMake(ori.size.width-10, ori.size.height-10);

    self.btn.frame = ori;



/* Make a rect from `(x, y; width, height)'. */

CG_INLINE CGRect CGRectMake(CGFloat x,CGFloat y,CGFloat width,

  CGFloat height);

//

}

这是 离原点self.btn.frame不变的 长宽 改变的放大缩小,  (ps :从这里我们可以推测 按钮既有label 又有imageview 属性  它不是单一视图



storyboard上面连线.m获得图片的属性btnIcon,要实现改变其属性则将btnIcon它放在action里面,先获得该按钮的frame(self.btnIcon.frame),然后再修改,最后将修改的值赋值回去给btnIcon,完成操作,而由于我们在这里想要实现的有   对该控件位置(上下左右)和大小(改变)的多个操作,所以我们可以讲其封装起来,也就是将本质相同表象不同(或者说是思路相同可是数字等的不同)放在一个方法里面,通过switch和tag实现,

0 0
原创粉丝点击