zoukankan      html  css  js  c++  java
  • Android入门知识梳理

    清单文件: AndroidManifest.xml

    • package: 一台手机上,包名用来识别一个应用。也就是说,不能有两个应用是同一个包名的。
      • adb uninstall 包名 ; adb install apk全路径
      • 签名一样,版本号不低于旧版本,重复安装会覆盖
      • 签名不同,新包安装失败。
    • versionCode : 版本号。 必须是数字
    • versionName: 版本名。 字符串。可以是中文
    • apllication
      • label: 应用名字。

      • icon : 图标

      • Activity

        • label
        • icon
        • name: 所使用Activity的全路径。 包名+ . +类名。

    MainActivity extends Activity

    • onCreate() : 当界面被创建的时候会被调用。
      • setContentView() R.laytout.xx
      • setContentView(new TextView(this));

    LinearLayout

    -layout_weightSum : 可以省略

    • orientation
      • horizontal
      • vertical

    子节点有的属性

    • layout_weight
    • layout_gravity: 在界面的子组件的位置
      • 如果是水平布局,只能调整垂直方向的重心
      • 如果是垂直布局,只能调整水平放的重心。 left right horizontal_center

    • layout_ 宽度
      • 100px
      • wrap_content: 包裹内容
      • match_parent: 和父组件一样大
    • layout_height: 高度

    TextView

    - gravity: 控制内容在组件里显式的位置

    尺寸数值

    • dp: px=dp*(dpi/160)

      dpi: dot per inch: 每英寸的像素点数。可以调整我屏幕的分辨率,来展示像素密度的问题。

      • 假设屏幕大小不变 都是两英寸
      • 如果分辨率是 320*480 那么像素密度就是 160.那么 1dp == 1px. 160 dp 就是 160px, 就是屏幕的中心
      • 如果分辨率变成 480960. 像素密度是 240 那么 1dp(240/160) = 1.5px. 160dp == 240px. 一样在屏幕中央。
    • px:

    • pt:

    • sp: 这个一般是用来指定字符的大小的,功能类似dp。所以一般设置文字大小推荐使用这个sp。


    布局

    LinearLayout

    • orientation : 线性布局布局方向
      • horizontal: 水平布局
      • vertical: 垂直布局
    • 子节点属性:
      • layout_gravity: 组件的重心。
        • 如果是水平布局,不能水平居中
        • 如果是垂直布局,不能垂直居中。

    ReletiveLayout:

    没有layout_gravity

    • 如果一个组件是依赖另外一个组件布局的,如果剩余空间不够,会被压缩。

    • 如果所依赖控件比当前控件出现的还晚,也就是找不到对应的id,可以

      android:layout_above="@+id/center"

      这种方式引用id

    子组件常见属性

    RelativeLayout

    相对父节点的属性

    • android:layout_alignParentLeft 是否跟父元素左对齐

    • android:layout_alignParentTop 是否跟父元素顶部对齐

    • android:layout_alignParentRight 是否跟父元素右对齐

    • android:layout_alignParentBottom 是否跟父元素底部对齐

    • android:layout_centerVertical 在父元素中垂直居中

    • android:layout_centerHorizontal 在父元素中水平居中

    • android:layout_centerInParent 在父元素中居中 相对于别的节点的属性

    • android:layout_alignBaseline 跟指定控件中间对齐(重心对齐)

    • android:layout_alignLeft 跟指定控件左对齐

    • android:layout_alignRight 跟指定控件右对齐

    • android:layout_alignTop 跟指定控件顶部对齐

    • android:layout_alignBottom 跟指定控件底部对齐

    • android:layout_toRightOf 在指定控件的右边

    • android:layout_toLeftOf 在指定控件的左边

    • android:layout_above 在指定控件的上边

    • android:layout_below 在指定控件的下边

    • 如果一个组件是依赖另外一个组件布局的,如果剩余空间不够,会被压缩。

    • 如果所依赖控件比当前控件出现的还晚,也就是找不到对应的id,可以

      android:layout_above="@+id/center"

      这种方式引用id


    FrameLayout:

    可以使用layout_gravity,而且不限制方向。

    AbsoluteLayout:

    基本没用,子组件只能设置 layout_x layout_y

    margin padding区别

    -margin是设置当前组件距离父组件边框的为孩子

    • padding: 设置当前组件添加子组件的时候,有多少的范围是不能用来显示的。

    按钮点击

    setClickListener()

    Logcat

    • 视图显示
    • sysout的区别
    • 不同的等级
    • 过滤器
      • 直接搜索 只能搜索text里的内容
      • 设置filter 通过包名过滤
    • Log.d(tag, msg)
    • Log.v(tag, msg)
    • Log.i(tag, msg)
    • Log.w(tag, msg)
    • Log.e(tag, msg)

    Toast

    Toast不能在子线程里show

    Toast t = Toast.makeText(MainActivity.this, "btn1被点击了", Toast.LENGTH_SHORT);
    t.show();
  • 相关阅读:
    2015生命之旅---第三站象山之行
    我的八年程序之路(四)程序路上的新起点
    2015生命之旅---第二站长沙杭州
    2015生命之旅---第一站重庆
    我的八年程序之路(三)为了理想放弃高薪
    锋友分享:国行和非国行iPhone的送修需知
    iPhone被盗后续更新二:被换机!已取机!没扣住新机!怎么找新机呢?事发半年后跟进...
    iPhone被盗后续更新一:怎么找老机
    iPhone被盗后怎么?这篇文章只办针对iOS7后的系统
    四个小诀窍 告诉你雪景怎么拍才能更好看
  • 原文地址:https://www.cnblogs.com/deny-66/p/5585438.html
Copyright © 2011-2022 走看看