《第一行代码》学习笔记3--关于UI控件的两三语

本文适合于对Android开发有一定了解,正在Android入门中的小白
Github源码:无

Let's Go Android!

1.可视化界面编辑工具(如下图)


《第一行代码》学习笔记3--关于UI控件的两三语_第1张图片
  • 通常这种方式制作出的界面都不具有很好的屏幕适配性,而且难以胜任复杂界面的编写要求。

2.控件的宽和高都有三个可选值:wrap_contentmatch_parentfill_parentmatch_parent = fill_parent(不推荐使用)】,当然也可以自己指定一个固定的大小,比如android:layout_height="64dp",这样有时会在屏幕适配方面出现问题。

android:gravity指定文字的对齐方式,可选值有:top、bottom、left、right、center等,可以用“|”来指定多个值。
②EditText的android:maxLines属性指定了最大行数,输入内容超过最大行数的时候,文字就会向上滚动。
③ImageView,通过代码动态地更改其中的图片:imageView.setImageResource(R.drawable.picture_name)
④AlertDialog的几种常见形式以及自定义布局;
⑤ProgressDialog,若setCancelable()中传入了false,表示不能通过返回键取消,此时,必须在代码中做好控制,调用dismiss()方法来关闭对话框。
android:layout_margin属性指定了控件在上下左右方向上偏移的距离,当然可以使用android:layout_marginTop、android:layout_marginLeft等属性指定在某个方向上的偏移量。

4.可见属性

  • 所有的Android控件都有可见属性,可选值有三种:visible(默认值,可见的),invisibl(不可见,但仍占据原来的位置和大小,可认为透明了),gone(不可见,不占空间)。
  • 可以使用代码控制:setVisibility()getVisibility()方法,可选值有三种:View.VISIBLE,View.INVISIBLE,View.GONE

5.四种布局

  • LinearLayout
    ①如果不指定android:orientation属性的值,则默认是horizontal
    ②gravity用于指定文字在控件中的对齐方式;layout_gravity用于指定控件在布局中的对齐方式。
    android:layout_weight属性让我们可以按照比例来定义控件的大小,注意:若按照比例定义宽度,则相应的控件的layout_width属性设”0dp”;
    若两个控件指定了具体的宽度数值,另一个控件的layout_weight”1”,则另一个控件自动填满剩余的空间。

  • RelativeLayout
    ①相对于父布局进行定位

android:layout_alignParentLeft = “true/false”
android:layout_alignParentRight = “true/false”
android:layout_alignParentTop = “true/false”
android:layout_alignParentBottom = “true/false”

②相对于控件进行定位

 android:layout_above = “@id/..”
android:layout_below = “@id/..”
android:layout_toLeftOf = “@id/..”
android:layout_toRightOf = “@id/..”

当一个控件去引用另一个控件的id的时候,该控件一定要定义在引用控件的后面,否则会出现找不到id的情况。
③边缘对齐

  android:layout_alignRight= “@id/..” //表示和另一个控件的右边缘对齐(以下类比)
android:layout_alignLeft= “@id/..”
android:layout_alignTop= “@id/..”
android:layout_alignBottom= “@id/..”
  • FrameLayout

  • TableLayout
    ①在TableLayout中每加入一个TableRow就表示在表格中添加了一行,TableRow中的控件是不能指定宽度的
    android:layout_span = “2”让某个控件占据两列的空间(合并单元格)
    android:stretchColumns = “1”,在布局的头属性里定义,表示:如果表格不能占满整个屏幕,就将第二列进行拉伸(计数从0开始)

6.引入布局以及创建自定义控件,参照相应的demo(以后会补充)

7.代码中动态销毁当前活动
( (Activity) getContext() ).finish();


原创文章,转载请注明出处:http://www.jianshu.com/p/b00b0a1ea221

你可能感兴趣的:(《第一行代码》学习笔记3--关于UI控件的两三语)