天天看点

Android权威编程指南笔记 第九章 ConstraintLayout第九章 使用布局与组件创建用户界面

文章目录

  • 第九章 使用布局与组件创建用户界面
    • Constraint约束布局
    • 相关小记
    • 挑战练习
    • 时间格式参数

第九章 使用布局与组件创建用户界面

Constraint约束布局

  • 添加依赖项
  • 转换默认布局LinearLayout为ConstraintLayout约束:
    Android权威编程指南笔记 第九章 ConstraintLayout第九章 使用布局与组件创建用户界面
  • 约束编辑选项:
    Android权威编程指南笔记 第九章 ConstraintLayout第九章 使用布局与组件创建用户界面
  • 遵循默认的设计规范:边距属性默认为16dp或8dp。
  • 样式:含有描述组件行为和外观的属性定义。
  • 视图的宽与高:
    Android权威编程指南笔记 第九章 ConstraintLayout第九章 使用布局与组件创建用户界面

相关小记

  • 可以在ConstraintLayout中添加约束,类似于橡皮筋。有着一定的约束规范。
  • 编剧属性是布局参数,由父组件为主。内边距(Padding)不是布局参数,以内容为基础。
  • 通常以dp设置距离的大小。用sp设置字体的大小。

挑战练习

  • 自定义日期的格式
/**
     * @param activity 传入DateFormat.is24HourFormat(context)方法中的context
     * @param mCrime 数据模型
     * @return string类型
     */
    public static String dateZhongwen(Context activity, Crime mCrime){
        if (DateFormat.is24HourFormat(activity)) {
            date = DateFormat.format("yyyy年MM月dd日 EEEE kk:mm", mCrime.getDate()).toString();
        } else {
            date = (String) DateFormat.format("yyyy年MM月dd日 EEEE hh:mm", mCrime.getDate());
        }
        return date;
    }
           

时间格式参数

  • yyyy : 代表年 假设年份为 2019

    "y" , "yyy" , "yyyy" 匹配的都是4位完整的年 如 : "2019"

    "yy" 匹配的是年分的后两位 如 : "19"

  • MM : 代表月 假设月份为 6

    "M" 对应 "6"

    "MM" 对应 "06"

  • dd : 代表日(只能使用小写) 假设为13号

    "d" , "dd" 都对应 "13"

  • hh : 代表时(区分大小写,大写为24进制计时,小写为12进制计时) 假设为15时

    "H" , "HH" 都对应 "15"

    "h" 对应 "3"

    "hh" 对应 "03"

  • mm : 代表分 假设为32分

    "m" , "mm" 都对应 "32"

  • ss : 代表秒(只能使用小写) 假设为15秒

    "s" , "ss" 都对应 "15"

  • E : 代表星期 假设为 Sunday

    "E" , "EE" , "EEE" 都对应 "Sun"

    "EEEE" 对应 "Sunday"

  • a : 代表上午 “AM” 还是下午"PM"