黑马程序员_Android-Activity布局初步(二)与常用控件(二)

---------------------- android培训java培训、期待与您交流! -----------------------

一:Activity布局初步(二)

		1:LinearLayout的使用方法

属于线型布局
LinearLayout初步布局属性:
     android:orientation="vertical";
LinearLayout布局的方向有两项选择:horizontal(水平的),vertical(垂直的)
      android:layout_width="fill_parent";
LinearLayout布局的宽度有两项选择:fill_parent(填满父控件), wrap_content(刚好包含内容)
     android:layout_height="fill_parent";
LinearLayout布局的高度有两项选择:fill_parent(填满父控件),wrap_content(刚好包含内容)

2:TableLayout的使用方法
属于表格型布局
TableLayout初步布局属性:
      android:layout_width="fill_parent";
  ableLayout布局的宽度有两项选择:fill_parent(填满父控件),  wrap_content(刚好包含内容)
    android:layout_height="fill_parent";
TableLayout布局的高度有两项选择:fill_parent(填满父控件), wrap_content(刚好包含内容)
    android:stretchColumns="1"
设定TableLayout中的哪一列设置为拉伸列,当所有列不足以填满TableRow时,拉伸哪一列来填满(计算列数从0开始)
TableLayout的主要子标签是TableRow(一行)

3:xml中控件的属性
    <!--
android:id --为空间制定相应的id
android:text --指定控件当中显示的文字,最好将文字在strings.xml中配置,然后使用
android:grivity --指定控件中的内容的基本位置,比如说居中,居右等位置
android:textSize --指定控件中文字的大小
android:background --指定控件所使用的背景色,RGB命名法
android:width --指定控件宽度 
android:height --指定控件高度
android:padding* --指定控件的内边距,也就是控件当中的内容(值的属性最好用dip表示)
android:sigleLine --如果设置为真的话,则将空间的内容在同一行当中进行显示
android:weight --多个控件之间指定控件所占大小比例
android:layout_marginLeft--外边框,该控件和相邻控件之间的距离
     -->
(xml中<!-- -->为注释)

4Layout之间的嵌套
一个layout的子layout所占的大小比例是对父类空间而言
子layout下还可以创建layout


相对布局:RelativeLayout
1:相对布局的基本概念一个控件的位置决定于它和它周围控件的关系,可以使Activity中的控件更加灵活

2:相对布局与其他布局的区别因为相对中控件的位置决定于它和它周围控件的关系,所以可以使Activity中的控件更加灵活

3:相对布局常用控件属性介绍
<!--
一:以ID进行位置设置
(1):边缘方向相反
android:layout_above 将该控件的底部至于给定ID的控件之上
android:layout_below 将该控件的顶部至于给定ID的控件之下
android:layout_toLeftOf 将该空间的右边缘和给定ID的控件的左边缘对齐
android:layout_toRightOf将该控件的左边缘和给定ID的控件的右边缘对齐
(2):边缘方向相同
android:layout_alignBaseline 该控件的八色里呢和给定ID的控件的baseline对齐
android:layout_alignBottom 将该控件的底部边缘和给定ID控件的底部边缘对齐
android:layout_alignLeft 将该控件的左边缘和给定ID控件的左边缘对齐
android:layout_alignRight 将该控件的右边缘和给定ID控件的右边缘对齐
android:layout_alignTop 将该控件的顶部边缘和给定ID控件的顶部边缘对齐

二:以值的真假设置
(1):与父控件边缘对齐
android:alignParenBottom 如果该值为true,则将该控件的底部与父控件的底部对齐
android:layout_alignParentLeft 如果该值为true,则将该控件的左边与父控件的左边对齐
android:layout_alignParentRight 如果该值为true,则将该控件的右边与父控件的右边对齐
android:layout_alignParentTop 如果该值为true,则将该控件的顶部与父控件的顶部对齐
(2):是否居中android:layout_centerHorizontal 如果该值位true,该控件将被至于水平方向的中央
android:layout_centerInParent 如果该值位true,该控件将被至于水平方向和垂直方向的中央
android:layout_centerVertical 如果该值位true,该控件将被至于垂直方向的中央
-->

4:RelativeLayout初步布局属性
android:layout_width="fill_parent";
RelativeLayout布局的宽度有两项选择:fill_parent(填满父控件),wrap_content(刚好包含内容)
android:layout_height="fill_parent";
RelativeLayout布局的高度有两项选择:fill_parent(填满父控件),wrap_content(刚好包含内容)
android:padding="10px"
RelativeLayout与父控件之间的间隔距离(边框)


二:常用控件(二)

1:RadioGroup和RadioButton的使用方法 
Android中的单选按钮
创建单选按钮前,要确定哪几个为一组,一组的单选按钮只能选一个
用RadioGroup设定组,RadioGroup需要设置orientation来确定单选按钮的排列是水平还是垂直

单选按钮监听器:
在代码中绑定监听器时是为组(RadioGroup)绑定监听器
RadioGroup的监听器是onCheckedChangeListener(RadioGroup的内部类接口),并且要成重写它的omCheckedChanged方法,方法中有两个参数,单选组对象(RadioGroup)和单选项的ID
用setonCheckedChangeListener()方法为单选组绑定监听器,建议用匿名内部类

2:CheckBox的使用方法
Android中的多选按钮

多选按钮监听器:
每一个多选选项都需要独自绑定一个监听器
CheckBox的监听器也是onCheckedChangeListener(但它是CheckBox的父类CompoundButton的内部类接口),并且要成重写它的omCheckedChanged方法,方法中有两个参数,选项(CompoundButton)和一个boolean,如果boolean值为true,证明被选中,为false证明被勾掉

3:Toast的基本方法
类似弹出的提示信息
Toast只需要将它放入相应要使用Tost的代码中,用它的makeText()方法传入三个参数来产生一个Toast,然后用show()方法来显示Toast
makeText中传入的参数:
第一个参数传入它所在Activity的对象,第二个参数传入Toast最终显示的文本,第三个参数传入显示的时间长度(只有两种选择:Toast.LENGTH_SHORT,Toast.LENGTH_LONG)

注意:RadioGroup的监听器中为什么不使用CompoundButton的内部类接口
onCheckedChangeListener,而却要自己建立一个onCheckedChangeListener来使用呢?
因为两个监听器中传入的参数不同,因为CheckBox是CompoundButton的子类所以监听器中的参数可以向上转型传入CompoundButton对象,但是RadioGroup并非
CompoundButton的子类所以它无法向上转型传入CompoundButton对象


4:Progressbar的使用方法
进度条
Progressbar的属性设置:
style="?android:attr/progressBarStyleHorizontal"    进度条水平方式显示
水平方式显示的进度条的进度分为主进度和第二进度
style="?android:attr/progressBarStyle"    进度条默认方式显示(转动的圆圈)
android:max="200" 设置进度条的长度,不设置的话默认长度为100
进度条的长度也可以在代码中设置 Progressbar.setMax(200);

android:visibility="gone" 进度条是否可见
在代码中可以设置进度条是否可见
Progressbar.setVisibility(View.VISIBLE) View.VISIBLE可以用0代替,但是最好用View.VISIBLE   可以增强阅读性

Progressbar.setProgress(int) 设置当前进度条上主进度显示进度
Progressbar.setSecondaryProgress(int) 设置当前进度条上第二进度显示进度

默认方式显示的进度条无需设置显示进度,因为默认进度条无法显示进度

Progressbar.getMax() 在方法中获取进度条最大值

5:ListView的使用方法
以列表的形式将控件显示出来
ListView显示的列表每一行都已控件的形式显示
ListView所在的Activity需要继承ListActivity(Activity的子类)

ListView初步布局属性:
android:scrollbars="vertical" 滚动条方向,当ListView中的列表超过屏幕大小时滚动条滚动的方向

当用ListView时代码中需要调用setListAdapten(SimpleAdapter)方法(继承于ListActivity),里面传入SimpleAdapter对象
建立SimpleAdapter对象时,要传入一些参数:
SimpleAdapter ListAdapter = new SimpleAdapter(this,list,R.layout.user,new String[]{"user name","user ip"},new int[]{R.ip.user_name,R.ip.user_ip});
this是指该类的对象
list是指传入一个Arraylist集合,而这个集合是由Hashmap组成的,这个hashmap中存放的是两个String组成的键值对
String数组中存放的是ListView中每列所对应map的键名
int数组中存放的是每列所存放的控件,这个空间的内容就是String数组中键所对应的值

如果想对ListView这个列表添加监听器,就需要使用ListActivity的onListItemClick(ListView l,view v,int position,long id)方法
其中的四个参数分别表示:
ListView l:该ListView 的对象
view v:点击行的对象
int position:行数
long id:行的id


--------------------- android培训java培训、期待与您交流! ----------------------

详细请查看:http://edu.csdn.net/heima

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值