在ViewController中添加
- //
- // ViewController.m
- // iosstudy2024
- //
- // Created by figo on 2024/8/5.
- //
-
- #import "ViewController.h"
-
- @interface ViewController ()
- @property (weak, nonatomic) IBOutlet UIButton *xigua;
- - (IBAction)xigua:(id)sender;
-
- @end
-
- @implementation ViewController
-
- - (void)viewDidLoad {
- [super viewDidLoad];
- // Do any additional setup after loading the view.
- //如何动态添加控件
- //1.new 一个按钮
- UIButton *uibutton=[[UIButton alloc]init];
- //2.设置不同状态下标题及颜色
- [uibutton setTitle:@"hello,world" forState:UIControlStateNormal];
- [uibutton setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];
- [uibutton setTitle:@"hello,china" forState:UIControlStateHighlighted];
- [uibutton setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];
- //3.设置不同状态下背景图片
- UIImage *uiImageNormal=[UIImage imageNamed:@"star"];
- [uibutton setBackgroundImage:uiImageNormal forState:UIControlStateNormal];
- UIImage *uiImageHignlighted=[UIImage imageNamed:@"diamond"];
- [uibutton setBackgroundImage:uiImageHignlighted forState:UIControlStateHighlighted];
-
- //4.设置坐标及长和宽
- CGRect rect=CGRectMake(10, 20, 100, 100);
- uibutton.frame=rect;
-
- //5.添加按钮事件
- [uibutton addTarget:self action:@selector(customClick) forControlEvents:UIControlEventTouchUpInside];
- //6.添加到父视图
- [self.view addSubview:uibutton];
-
- }
- - (void) customClick{
- NSLog(@"动态添加事件");
-
- }
-
- - (IBAction)xigua:(id)sender {
- NSLog(@"这里是西瓜!");
- //1.通过frame设置位置(+是向右和向下)和大小
- /** */
- // CGRect originFrame=_xigua.frame;
- // originFrame.size.width+=10;
- // originFrame.size.height+=10;
- // originFrame.origin.x+=10;
- // originFrame.origin.y+=10;
- // _xigua.frame=originFrame;
-
-
- //2.通过center设置位置,center是中心点
- /** */
- CGPoint centerPoint=_xigua.center;
- centerPoint.x+=100;
- centerPoint.y+=100;
- //方法一:头尾式,执行动画
- //1).开启动画,会平滑一点
- // [UIView beginAnimations:nil context:nil];
- // //2).设置动画执行时间,单位秒
- // [UIView setAnimationDuration:1];
- // _xigua.center=centerPoint;
- //3).提交动画 注释后,动画也可以执行
- // [UIView commitAnimations];
-
- //方法二:block方式执行动画
-
- [UIView animateWithDuration:1 animations:^{
- _xigua.center=centerPoint;
- }];
-
- //3.通过bounds设置位置(+是向左和向上)和大小
- /**
- CGRect originBounds=_xigua.bounds;
- originBounds.size.width+=10;
- originBounds.size.height+=10;
- originBounds.origin.x+=10;
- originBounds.origin.y+=10;
- _xigua.bounds=originBounds;
- */
- }
-
- @end