Fork me on GitHub

第二讲.UITextField , UIButton , delegate , 程序启动流程,QQ登录界面搭建练习

UI一.UITextField(文本输入框)
    (一) UITextField(输入框):是控制文本输入和显示的控件。在App中UITextField出现频率也比较高。
    iOS系统借助虚拟键盘实现输入,当点击输入框,系统会自动调出键盘,方便你进一步操作。在你不需要输入的时候,可以使用收回键盘的方法,收回弹出的键盘。
    UITextField和UILabel相比,UILabel主要用于文字显示,不能编辑, UITextField允许用户编辑文字(输入)。

 
 创建UITextField与创建UILabel的步骤很相似,使用方法如下。

    1>、开辟空间并初始化(如果本类有初始化方法,使用自己的;否则使用父类的)。

    2>、设置文本显示、输入相关的属性

    3>、添加到父视图上,用以显示

    4>、释放

 

   UITextField核心功能主要包含3个方面: 1.文本显示  2.输入控制   3.外观配置
 
 
 
 
示例代码:(一)(从常用属性,文本,外观,等方面说明)
(其中提示文字输出,安全密码模式输出,弹出键盘类型,边框样式,显示清除按钮等经常会用)
 
 常用属性设置
 
 
 
文本显示设置
 
 
 
 
示例代码:(二)
 
输入控制
 
 
外观控制(轻触按钮就是在输入后面有个圆形小x号)
 
 
 
 
示例代码:(三)此处需要自己添加自定义视图,多用于QQ头像提示输入等
 
 
 
 
 
二、UIButton
     UIButton(按钮):是响应用户点击的控件。
    在AppUIButton是出现频率很高的控件。 UIButtonUILabelUITextField侧重点不同,侧重于处理点按。

 

    创建UIButton与创建UILabelUITextFieldUIView的步骤很相似。

            1、创建button对象(如果本类有初始化方法,使用⾃自己的;否则使用父类的)。

            2、设置按钮显示相关的属性


            3、为按钮添加点击事件


            4、添加按钮到父视图上,⽤用以显示


            5、按钮无需释放(因为使用的是类方法创建的button)

 


示例代码:(一)

 

创建及想相关属性设置

 

 

 

 外观控制

 

 

 

 添加和删除按钮点击事件详解

(按钮点击事件外部要有实现,同时为了完成点击更换窗口颜色这里还是用了宏定义)

 

 

 

 简单总结:

      UIView是所有可视化控件的基类。

      UILabelUITextFieldUIButton是具有特定外观特定功能的视图。

      UILabel侧重于文本的呈现。
      UITextField侧重于输入。
      UIButton侧重于点击事件处理。

 

三、delegate

 

 使用delegate完成点击键盘上的return按钮,这个按钮点击响应事件

 

    点击键盘return按钮实现键盘回收的步骤:
                1、将AppDelete作为UITextFielddelegate
        2AppDelete.h文件接受UITextFieldDelegate协议
        3AppDelete.m文件实现textFieldShouldReturn:方法
 

 示例代码如下:(代理协议的实现过程:创建代理,遵循协议.调用实现)

 

 在AppDelegate.h中遵循协议<UITextFieldDelegate>

 

 

 

 在AppDelegate.m中创建代理

 

 

 实现部分

 

 

 

 四、程序启动流程

 

UIApplicationMain在程序入口函数main函数中调用,主要实现了3

     功能: 1>.创建应用程序(UIApplication)实例

           2>.创建应用程序代理实例

           3>.建立事件循环(runloop:死循环,不断检测程序运行状态,是否被触摸,晃动等)

 

    UIApplicationDelegate是一个OC的协议。里面声明了一堆方法,这些方法都与应用程序运行状态有关,它们由应用程序代理实现。UIApplication 对象负责调用。

 

UIApplicationDelegate协议代理的一些方法:

 

 

 

 

 

 

 五.总结(懒省事了 😊 )

 

 

 

 练习题:根据一个view的大小位置设置其余view,button等的位置和大小,并实现简单QQ登录界面

  示例代码:

  AppDeleGate.m文件(上)

 

 

 

AppDeleGate.m文件(下)

 

 

效果图:

 

posted @ 2015-09-08 16:08  DengHuiCheng  阅读(202)  评论(0编辑  收藏  举报