自定义登入注册界面(xib)

  • 模块划分,添加占位视图(view)
    • 最好分模块设计, 有利于需求变动时更改
    • 这里分成三个模块, 上中下
  • 上面模块,直接添加
    • 添加两个按钮
  • 中间模块,xib自定义登入注册View
    • 自定义复用性好, 可以在其他地方用
    • 注意: 按钮再点击的时候有一闪一闪的效果是 system 样式才有
    • 提供类方法快速创建
    • 重写awakeFromNib 从xib加载就会调用,就会把xib所有的属性全部设置
    • 一个xib中有多View , 代码量少
      • 注意加载的时候分清加载的数组中的哪个
      • 登入和注册View的父控件View的宽度是屏幕的的两倍, 分别添加两个view并给设置位置尺寸,分别在左右两边, 只要移动父控件View就可以达到左右切换登入和注册的两个View
    • 在viewDidLoad中加载xib创建登入和注册View
      • 分别给这个两个View设置在父控件上的位置
    • 实现登入和注册两个view的界面切换
      • 修改中间容纳登入和注册view的父控件的的左对齐约束,并实现动画效果
      • 注意: xib约束的动画调用的是layoutIfNeeded方法重新布局容器父控件
    • 注意: 默认一个View的xib加载, 尺寸和xib一样,因此必须给登入和注册都要设置尺寸, 做好屏幕适配
    • 注意: viewDidLayoutSubviews方法中布局子控件,既是执行约束之后,在这个方法中里面尺寸才是最准确.
    • 当两个东西的相似度较高,业务逻辑一样, 就用同一个类管理
  • 底部模块, xib自定义快速登入View
    • 添加三个快速登入按钮, 自动布局三个按钮登高等宽
    • 自定义按钮,重写layoutSubviews方法,布局内部子控件文字和图片的位置尺寸
    • 注意: 文字显示不出来, 是label尺寸不够, 要label的宽度>=文字的宽度 (有多种方法)
    • 这里使用: 调用sizeToFit 方法即可给label的宽度自适应;

results matching ""

    No results matching ""