IOS开发教程第一季之UI基础001

1.呼出控件窗口快捷键

控件窗口在xcod11中被隐藏为一个加号+

shift+command+L

2.输入文本框使用数字键盘

在文本框使用数字键盘,在TextField上设置keyboard Type的属性值为:Number Pad

3.呼出键盘快捷键

command+K

4.呼出主页面快捷键

command+shift+H(home)

5.拖线生成属性和方法

拖线选择
outlet生成属性
action生成方法

5.设置控件作为第一相应者

使用 resignFirstResponder

[self.textNumber resignFirstResponder];
6.停止view控件的编辑(缩回键盘)

让控制器管理的view做endEditing
这里view是控件所在的view

[self.view endEditing:YES];
7.结构体的赋值

不能对结构体的属性直接赋值,而应当将整个结构体取出后,在对结构体属性赋值。
下面的例子为按钮点击后让另一个控件发生位移

//4个箭头按钮的实现
- (IBAction)upArrow {
    CGRect originFrame=self.btnTtwoGril.frame;
    originFrame.origin.y-=10;
    
    self.btnTtwoGril.frame=originFrame;
    
    NSLog(@"向上的箭头");
}
8.多个按钮共用一个方法(类似Java一个按钮实现同一个特定的监听器)

1、将多个按钮通过拖线的形式,拖拽到同一个方法上(写在类扩展里)
2、拖拽的时候选中sender,sender是将调用的对象直接传递到方法上,从而实现多个按钮的行为触发同一个方法。
3、方法对调用对象的甄别,是通过每个按钮控件的tag值来判断的

- (IBAction)move:(UIButton *)sender {
    CGRect originalframe=self.btnTtwoGril.frame;
    switch (sender.tag) {
        case 10:
            originalframe.origin.y-=10;
            break;
        case 20:
            originalframe.origin.x+=10;
            break;
        case 30:
            originalframe.origin.y+=10;
            break;
       case 40:
            originalframe.origin.x-=10;
            break;
            
        default:
            break;
    }
    self.btnTtwoGril.frame=originalframe; 
}

对对象的缩放可以使用CGRect结构体的bounds.size.wdith(height)进行缩放。

9.给特定内容设置动画
- (IBAction)move:(UIButton *)sender {
    CGRect originalframe=self.btnTtwoGril.frame;
    switch (sender.tag) {
        case 10:
            originalframe.origin.y-=100;
            break;
        case 20:
            originalframe.origin.x+=100;
            break;
        case 30:
            originalframe.origin.y+=100;
            break;
       case 40:
            originalframe.origin.x-=100;
            break;
            
        default:
            break;
    }
    //1开启动画(这种方式在xcode11.3中已经过时)
    [UIView beginAnimations:nil context:nil];
    //2设置动画执行时间
    [UIView setAnimationDuration:1];//动画持续时间1秒钟
    self.btnTtwoGril.frame=originalframe;
    //3提交动画
    [UIView commitAnimations];
    NSLog(@"response four button");
}

另外一例修改缩放(大小)

- (IBAction)scaler:(UIButton *)sender {
    CGRect originalBound=self.btnTtwoGril.bounds;
    switch (sender.tag) {
        case 50:
            originalBound.size.width*=1.5;
            originalBound.size.height*=1.5;
            break;
        case 60:
            originalBound.size.width*=0.7;
            originalBound.size.height*=0.7;
            break;
        default:
            break;
    }
    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:1];
    self.btnTtwoGril.bounds=originalBound;
    [UIView commitAnimations];
    
}

使用block块来实现缩放。并使用CGRect.frame结构体来实现实现缩放

- (IBAction)scaler:(UIButton *)sender {
    CGRect originalFrame=self.btnTtwoGril.frame;
    switch (sender.tag) {
        case 50:
            originalFrame.size.width*=1.5;
            originalFrame.size.height*=1.5;
            break;
        case 60:
            originalFrame.size.width*=0.7;
            originalFrame.size.height*=0.7;
            break;
        default:
            break;
    }
    //使用block快来实现动画(这里使用的是匿名块)
    [UIView animateWithDuration:1 animations: ^{
        self.btnTtwoGril.frame=originalFrame;
    }]; 
}
10.使用纯代码方式生成一个按钮(动态生成按钮)

在viewdidload方法中实现代码

- (void)viewDidLoad {
    [super viewDidLoad];
    //创建按钮对象
    UIButton *button=[[UIButton alloc]init];
    //设置按钮文本
    [button setTitle:@"点我吧" forState:UIControlStateNormal];
    [button setTitle:@"美洋洋" forState:UIControlStateHighlighted];
    
    //设置文本颜色
    [button setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
    [button setTitleColor:[UIColor blueColor] forState:UIControlStateHighlighted];

    //设置默认状态背景图
    UIImage *imgNormal=[UIImage imageNamed:@"wangyjiao"];
    UIImage *imgHighLight=[UIImage imageNamed:@"wangyang"];
    [button setBackgroundImage:imgNormal forState:UIControlStateNormal];
    [button setBackgroundImage:imgHighLight forState:UIControlStateHighlighted];
    //设置控件的frame
    button.frame=CGRectMake(100, 200, 90, 90);
    //将控件加入到view对象中
    [self.view addSubview:button];
}
11.为动态生成的按钮注册事件(创建事件方法)
- (void)viewDidLoad {
    [super viewDidLoad];
    //创建按钮对象
    UIButton *button=[[UIButton alloc]init];
    //设置按钮文本
    [button setTitle:@"点我吧" forState:UIControlStateNormal];
    [button setTitle:@"美洋洋" forState:UIControlStateHighlighted];
    
    //设置文本颜色
    [button setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
    [button setTitleColor:[UIColor blueColor] forState:UIControlStateHighlighted];

    //设置默认状态背景图
    UIImage *imgNormal=[UIImage imageNamed:@"wangyjiao"];
    UIImage *imgHighLight=[UIImage imageNamed:@"wangyang"];
    [button setBackgroundImage:imgNormal forState:UIControlStateNormal];
    [button setBackgroundImage:imgHighLight forState:UIControlStateHighlighted];
    //设置控件的frame
    button.frame=CGRectMake(100, 200, 90, 90);
    //将控件加入到view对象中
    [self.view addSubview:button];
    
    //通过代码为按钮注册一个事件
    [button addTarget:self action:@selector(buttonClick) forControlEvents:UIControlEventTouchUpInside];
}

//创建一个事件处理方法
-(void)buttonClick{
    NSLog(@"为一个按钮注册单击事件");
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值