zoukankan      html  css  js  c++  java
  • UI布局

    1,初始化控件一般在onCreate()中完成,由于构造器中尚未完成控件加载,不能在其内初始化控件.

    2,Activity子类必须含有无参构造.Intent.startActivity()方法调用的是Activity的无参构造来启动Activity的.

    3,intent-filter

    • Main Activity必须使用category.Launcher作为类别.  
    • 自定义category必须首先包含category.Default.对于其余的category,在指定Intent时必须使用addCategory方法添加.
    • 使用隐式的Intent调用时,如果有多个Activity满足条件时,屏幕会出现选择列表.

    4,在Activity间传输数据

    • 通过Intent.putExtra/getXxx来传递简单类型或者Serializable.
    • 通过Activity的静态变量.需要在startActivity显示之前进行赋值.
    • 使用剪贴板.只支持String.对于Serializable对象,=>byte[]=>Base64编码为String.Base64.decode来解码.
    • 使用全局对象.getApplicationContext().
      • extends Application.且在<application >节点配置该类.
    • 返回数据到前一个Activity.
      • startActitvityForResult(intent,1).其中,1代表请求码,用以在获取结果时区分请求.
      • intent.putExtra(); setResult(2,intent).其中,2代表响应码,
      • 重载onActivityResult方法来获取结果.

    5,

    • 使用XML布局文件定义View.
      • 保存在res/layout中的xml文件.
      • 布局文件,和其内的视图ID都会在R和R.id类中生成一个对应的变量.所以命名要符合规范.
      • 指定ID:@+id/idName.表示如果idName值在R.id中不存在时,产生新的,如果以存在,直接使用之.
      • 使用: setContentView(R.layout.Xxx).findViewByID(R.id.Xxx).
    • 在代码中控制View.
      • setText().如果参数是int类型时,会被认为是字符串资源的ID.所以使用textView.setText(string.valueof(200))来设置int值.
      • 一个视图只能有一个父视图.

    6,布局.

    • FrameLayout
      • 以层叠覆盖方式显示.
      • layout_gravity:视图在父视图中的位置.layout_marginTop/Bottom,视图的上/下边缘离基线的距离.
    • LinearLayout
      • orientation:horizontal/vertical.
      • gravity属性.控制视图的位置.可以有多个值,使用|分割.
      • layout_weight:如果是大于0的值,代表父视图中,除掉该值为0的子视图的高/宽值后,所占据的比例值.响应地拉伸.
    • RelativeLayout
      • layout_Below/above/toLeftOf/toRightOf.可以指定右下这样的组合值.
    • TableLayout
      • 一般使用GridView来代替表格布局.
    • AbsoluteLayout
      • layout_x/y.
    • <inculde>来重用布局文件
      • 可以覆盖被引用布局文件中的属性值.
    • 任意一个布局文件,系统都会在最外层添加一个FrameLayout.
  • 相关阅读:
    1038 Recover the Smallest Number (30分) sort-cmp妙用(用于使字符串序列最小)
    1033 To Fill or Not to Fill (25分)贪心(???)
    1030 Travel Plan (30分) dij模板题
    1020 Tree Traversals (25分)(树的构造:后序+中序->层序)
    1022 Digital Library (30分) hash模拟
    1018 Public Bike Management (30分)(Dijkstra路径保存fa[]+DFS路径搜索)
    1017 Queueing at Bank (25分)模拟:关于事务排队处理
    1014 Waiting in Line (30分)队列模拟题
    1010 Radix (25分)暴力猜数or二分猜数
    HDU 3032 multi-sg 打表找规律
  • 原文地址:https://www.cnblogs.com/robyn/p/3535658.html
Copyright © 2011-2022 走看看