zoukankan      html  css  js  c++  java
  • 【Objective-C学习记录】第三十六天

    今天学习了一下UILabel UITextField UIButton UIImage这几个基础控件,UILabel没什么好说的,因为不涉及到交换的工作,记住几个属性就行了。

    UITextField这个东西,遇到了不少问题。我用的是XCode7.2,建立空应用(Empty Application)后,UITextField里无论怎么点击都没有反应,用XCode6.3打开却是正常的,后来也不知道为什么时而正常时而报错,找了一下午问题还是没找到,只能先用6.3做着了。

    说到UITextField,主要是键盘类型的设置,还有如何撤回键盘这个操作,学到了两种方式:

    1.实现UITextFieldDelegate协议里的textFieldShouldReturn:方法:

    1 - (BOOL)textFieldShouldReturn:(UITextField *)textField
    2 {
    3      [textField resignFirstResponder];
    4      return YES;
    5 }

    textFieldShouldReturn:这个方法是指按下键盘上的return键时执行的方法,当按下后正在输入的textField会放弃第一响应者,即撤回键盘。

    2.实现touchesBegan: withEvent:方法

    这个方法在网上查到的,不多说,直接上代码:

    1 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
    2 {
    3      [self.window endEditing:YES];
    4 }

    这个方法大概做的事情是当检测到在屏幕空白区上按下时,会结束编辑状态。感觉这个方法比上面那个常用。

    UIButton主要注意systemButton和customButton的一些小区别,注册事件使用addTarget: action: forControlEvents:方法,第一个参数一般是self,第二个参数为SEL即方法名,第三个参数是何种方式触发该button,一般使用UIControlEventTouchUpInside这个值。

    UIImage可以用来制作帧动画,并且需要注意的是如果图片格式为png,可以不写扩展名,其他格式必须写,主要步骤如下:

    1.实例化UIImageView对象

    UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];

    2.实例化一个可变数组用来存放帧动画的图片

    NSMutableArray *imageViewArray = [[NSMutableArray alloc] initWithCapacity: 0];

    3.遍历图片,存在可变数组里(假设有10张,名字为“sprite0~9”)

    for (int i = 0; i < 10; i ++)

    {

        UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"sprite%d", i]];

        [imageViewArray addObject: image];

    }

    4.将帧动画数组指定给imageView

    imageView.animationImages = imageViewArray;

    另外还可以设置一些其他属性,包括动画时长:animationDuration

    重复次数:animationRepeatCount(为0的时候表示一直重复)

    ================写在后面=============

    今天忙了一天,主要是XCode的那个bug让我头疼不已,另外打算用WordPress把以前丑陋不堪的主页重新做一遍,做好了博客肯定会转移到自己的主页上,今天写的略为仓促,主要是写完要继续搭WordPress,不说了,Go go。

  • 相关阅读:
    使用XmlWriter写入XML
    Xml的一些基本概念(摘抄自w3school.com.cn)
    Basler相机启动问题xml读取出错
    c#开方,平方,sin函数计算
    如果遇到继承控件,添加到新项目里在工具栏找不到的情况下,F5启动一下,重新生成是不会有的,要运行成功才有
    添加项目文件时候不要把引用文件直接放到bin-debug里
    发现三个很好看的控件
    merge into 批量修改语句
    -- oracle上一些查询表和字段语句
    -- oracle上查看储存过程内容
  • 原文地址:https://www.cnblogs.com/shvier/p/5107549.html
Copyright © 2011-2022 走看看