Android界面编程

视图

RelativeLayout对齐方式:

这里的alignLeft属性可以相对于TextView

相对于父控件:android:layout_alignParent+Top/Bottom/Left/Right

相对于给定id控件:android:layout_+above/below/toLeftOf/alignTop/alignBottom

LinerLayout

用于指定排列方式的属性:android:orientation="vertical/horizontal"

宽度、高度属性:fill_parent,wrap_content

EditText的文本用:hint属性

Button和其他的用:text属性

子节点排列方式:android:gravity=“center_horizontal”

FrameLayout

可以用来显示单个视图的占位符。添加到FrameLayout中的视图常常锚定在布局的左上方

android:layout_width=”wrap_content”

android:layout_height=”wrap_content”

android:layout_alignLeft=”@+id/lblComments”

android:layout_below=”@+id/lblComments”

android:layout_centerHorizontal=”true”>

android:layout_width=”wrap_content”

android:layout_height=”wrap_content”/>

可以利用android:layout_gravity属性来指定其居中排列

前景照片属性

android:foreground,android:foregroundGravity,通常不会用FrameLayout显示多项内容

ConstraintLayout

所有的视图都是根据兄弟视图和父布局之间的关系来布局的,可以通过拖放操作来构建布局,而不是编辑XML(注意不要有循环依赖)

app:layout_constraintBottom_toBottomOf="parent"

app:layout_constraintEnd_toEndOf="parent"

app:layout_constraintStart_toStartOf="parent"

app:layout_constraintTop_toTopOf="parent"

同时约定上下,就会居中

必须为视图添加至少一个水平约束条件和一个垂直约束条件,每个约束条件均定义了视图在竖轴或者横轴上的位置

字体

sp:会随着系统字体的大小改变,且能适应屏幕密度的变化

dp:不会随着系统字体的大小而改变,不能适应屏幕密度的变化

组件

文本框(TextView)

直接继承了View,还是EditText、Button两个UI组件类的父类

作用就是显示文本

android:password,可以按密文方式显示文本信息

android:selectAllOnFocus:默认选中并获得焦点

批量修改多个文本框

利用循环遍历,先将所有控件Id,和所有控件需要显示的文字在数组中存入,再利用循环。

输入框(EditText)

限定输入类型:android:inputType

限定行数:android:lines

内容提示:android:hint

不仅可以输入文字,还可以是其他的照片之类的

按钮(Button)

点击相应:android:onClick=“onLogin”

保证按钮之间的互斥

用RadioGroup,然后包含RadioButton即可

判断哪一个按钮被选中

利用isChecked()属性即可。

事件监听器的方式

图像框(ImageView)

同样有onClick属性,设置背景用android:background

代码栏:imageView.setBackgroundResource(R.drawable.bg1)

XML中src和background的区别

background 会根据 ImageView 组件给定的长宽进行拉伸,而 src 就存放的是原图的大小,不会进行拉伸

src 是图片内容(前景), bg 是背景,可以同时使用。

scaleType 只对 src 起作用; bg 可设置透明度

网格视图(GridView)

stretchMode属性值的作用是设置GridView中的条目以什么缩放模式去填充剩余空间。

填充图像的步骤

文章链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: