zoukankan      html  css  js  c++  java
  • 1-1 UIView认识控件

    什么是控件?
    屏幕上的所有UI元素都叫做控件(也有叫做视图、组件)比如按钮(UIButton)、文本(UILabel)都是控件
    控件的共同属性有哪些?
    尺寸
    位置
    背景色
    ......

    苹果将控件的共同属性都抽取到父类UIView中,所有的控件最终都继承自UIView
    UIButton、UILabel都继承自UIView(可以查看头文件验证)

    父控件、子控件
    每个控件都是个容器,能容纳其他控件

    内部小控件是大控件的子控件
    大控件是内部小控件的父控件

    每一个控制器(UIViewController)内部都有个默认的UIView属性@property(nonatomic,retain) UIView *view;
    控制器中管理的其他所有控件都是这个view的子控件(直接或者间接)

    UIView的常见属性
    @property(nonatomic,readonly) UIView *superview;
     获得自己的父控件对象

    @property(nonatomic,readonly,copy) NSArray *subviews;
     获得自己的所有子控件对象

    @property(nonatomic) NSInteger tag;
     控件的ID(标识),父控件可以通过tag来找到对应的子控件

    @property(nonatomic) CGAffineTransform transform;
     控件的形变属性(可以设置旋转角度、比例缩放、平移等属性)

    - (void)addSubview:(UIView *)view;
     添加一个子控件view

    - (void)removeFromSuperview;
     从父控件中移除

    - (UIView *)viewWithTag:(NSInteger)tag;
     根据一个tag标识找出对应的控件(一般都是子控件)

    @property(nonatomic) CGRect frame;
     控件矩形框在父控件中的位置和尺寸(以父控件的左上角为坐标原点)

    @property(nonatomic) CGRect bounds;
     控件矩形框的位置和尺寸(以自己左上角为坐标原点,所以bounds的x、y一般为0)

    @property(nonatomic) CGPoint center;
     控件中点的位置(以父控件的左上角为坐标原点)

    UIKit坐标系
    在UIKit中,坐标系的原点(0,0)在左上角,x值向右正向延伸,y值向下正向延伸

    可能用的上UI控件

     为了便于开发者打造各式各样的优秀App,UIKit框架提供了非常多功能强大又易用的UI控件,以下列举一些在开发中可能用得上的UI控件:
      

    红色表明最常用,蓝色代表一般,黑色代表几乎不用(这不是绝对的,仅供参考)
      提示:千万别一口气去百度所有的控件,没有这个必要一口气学完所有的控件,原因如下:
      有些控件可能一年用不到1次,用到时再学
      iOS中控件的用法都是相似相通的,掌握最主要、最常用的控件,就可以快速上手其他控件
      面试中不会被问及诸如“进度条会用不?开关会用不?”之类的问题

    UILabel – 文本标签
      

    UIButton – 按钮
      按钮的作用是:监听用户的点击事件,在用户点击后做出响应
      

    UITextField – 文本输入框
      文本输入框可以弹出键盘,让用户输入文本内容
      

    UITextView – 能滚动的文字显示控件
      如果文字内容比较多,需要换行显示,并且需要编辑
      

    UIProgressView – 进度条

      水平进度条,比如显示文件的下载进度,程序的启动进度

      

    UISlider – 滑块

      在2个数值之间滑动选择,比如调节音量大小
      
      

    UIActivityIndicator – 圈圈
      一直在转圈圈,表示让用户等待
      

    UIAlertView – 对话框(中间弹框)
      从中间弹出一个框提示用户下一步该做什么

      

    UIActionSheet – 底部弹框
      从底部弹出一个框提示用户下一步该做什么
      

    UIScrollView – 滚动的控件
      如果内容比较多,超出了一个屏幕,就可以用它来显示

      

    UIPageControl – 分页控件
      能显示当前的页码
      

    UITableView – 表格

      如果每一行显示的内容格式差不多,就用这个表格控件
      

    UICollectionView – 九宫格
      如果显示的东西是一块一块、一格一格的,而且每个格子长的差不多,就可以用它
      

    UIWebView – 网页显示控件
      一般用来显示网页,使用它,就可以在手机上浏览网页
      

    UISwitch – 开关
      要么打开,要么关上
      

    UISegmentControl – 选项卡
      在固定的几个选项之间进行选择
      

    UIPickerView – 选择器
      在多行数据之间只选择一行
      

    UIDatePicker – 日期选择器
      选择日期
      

    UIToolbar – 工具条
      一般显示在底部或者键盘顶部,里面有几个小按钮
      

    UINavigationBar – 导航条
      显示在顶部的条
      

    本人无商业用途,仅仅是学习做个笔记,特别鸣谢小马哥,学习了IOS,另日语学习内容有需要文本和音频请关注公众号:riyuxuexishuji
  • 相关阅读:
    (七)四种常见的post请求中的参数形式
    (六)获取http状态码和处理返回结果
    (五)application/x-www-form-urlencoded(表单请求)
    (四)进行HTTPS请求并进行(或不进行)证书校验(示例)
    (三)解决httpclient乱码
    (二)HttpClient Post请求
    (一)HttpClient Get请求
    (十一)Maven之profile实现多环境配置动态切换
    (四)带图片和附件的复杂邮件发送
    (三)JavaMail发送附件
  • 原文地址:https://www.cnblogs.com/laugh/p/6364280.html
Copyright © 2011-2022 走看看