Android学习-UI

参考第一行代码第三章内容

1.常用控件

1.1 TextView

match_parent:当前控件大小和父布局一致

wrap_content:当前控件大小刚好包含里面的内容

android:gravity:指定文字的对齐方式--------可选:top,bottom,left,right,center

                                                                     center_vertical垂直居中, center_horizontal水平居中

android:textSize:指定文字大小,单位用sp表示

android:textColor:文字颜色

1.2 Botton

Botton:程序和用户交互的控件

注:Botton中默认大写字体,若需要小写,增加  android:textAllCaps="false"

设置监听器:

 或使用接口方式注册

 1.3 EditText

作用:用户可在该控件中输入和编辑内容,也可在程序中对内容进行处理

android:hint="提示内容"-----> 指定了一段提示性文本。

android:maxLines="N"------> 指定了EditText的最大行数为N行,当内容超过N行时,文本会向上滚动,EditText不会继续拉伸。

 结合EditText与Button

 

 1.4 ImageView

作用:界面上展示图片

 实现:

 

 通过调用ImageView中的setImageResource()将图片改成img_2

1.5 ProgressBar

作用:界面上显示进度条

 android:visibility   -------> 可见属性。visible, invisible:不可见,仍占据原来的位置和大小,

                        gone:不可见,不占用屏幕空间

通过代码设置控件可见性:

setVisibility():可传入View.VISIBLE、View.INVISIBLE、View.GONE

 

 

 

 1.6 AlertDialog

作用:在当前界面弹出对话框(置顶所有界面之上,屏蔽其他键控的交互)

 1.7 ProgressDialog

作用:在对话框中显示进度条

使用场景:表示当前操作耗时,让用户等待

 2 布局

2.1 线性布局-LinearLayout

android: orientation="vertical"垂直

android: orientation="horizontal"水平排列

 注:水平排列时,内部控件宽度不可为 match_parent(导致单个控件将整个水平方向占满)

垂直排列时,内部控件高度不可为 match_parent(导致单个控件将整个垂直方向占满)

  • android:gravity:指定文字在控件的对齐方式
  • android:layout_gravity:指定控件在布局中的对齐方式

 android:layout_weight:使用比例指定控件大小(仅有LinearLayout使用)

android:layout_width:          单位表示:dp(常用于控件大小、间距等属性)

 2.2 相对布局-RelativeLayout

android:layout_alignparentLeft:与父布局的左部对齐

android:layout_alignparentTop:居中显示

android:layout_alignparentBottom:与父布局下部对齐

android:layout_above:一个控件位于另一个控件上方。需要为这个属性指定相对控件id 的引用

2.3 帧布局-FrameLayout

所有控件默认摆放在布局左上角

2.4 百分比布局

作用:可直接指定控件在布局中所占的百分比----可任意比例分割布局

PrecentFrameLayout

PrecentRalativeLayout

 

 

 3.自定义控件

3.1引入布局

作用:解决重复编写布局代码的问题

android:background:指定背景

android:layout_margin:指定控件在上下左右方向上偏移的距离

问题:书中3.4.1部分,为何Back和edit,左右位置确定---没理解

 

 

3.2 创建自定义控件

作用:解决系统控件不够用xian'xian

 

 

 

4 ListView--现已不太使用

缺点:不可横向滚动

作用:屏幕中有大量数据要展示,ListView 可滚动展示屏幕数据

ArrayAdapter:通过泛型来指定要适配的数据类型,然后在构造函数中把要适配的数据传入

创建List View项目:

 

 5 RecyclerView

作用:可实现横向和纵向滚动

 

 

实现横向滚动:

LinearLayoutManger的setOrientation():设置布局的排列方向,默认纵向排列,

LinearLayoutManger。HORIZONTAL:布局横向滚动。

 GridLayoutMannager:网格布局

StaggeredGridManager:瀑布流布局

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值