Android中的布局和控件
来源:互联网 发布:姚明nba生涯场均数据 编辑:程序博客网 时间:2024/05/08 23:35
Android中的各种布局和控件
一、五大布局:
①RelativeLayout(相对布局)
②LinearLayout(线性布局)
③FrameLayout(帧布局/框架布局)
④TableLayout(表格布局)
⑤AbsoluteLayout(相对布局)
第五个现在基本已经被淘汰了,这里就不多说,前四种布局也比较熟悉我也不啰嗦了,我只说说我用这些布局碰到的问题,在重点中提到的属性都是特有属性,公用属性挺多的,常用的也不多,自己多试试或者百度就可以了。
重点:
①相对布局中:
below=”@id/a”、above=”@id/a”表示位于a控件之下或之上
toLeftOf=”@id/a”、toRightOf=”@id/a”表示位于a控件的左边或右边
注意上下与左右的区别
alignParentRight=”true” 表示和父容器的右边对齐。父容器的理解:假设布局A里有布局B,且布局B是相对布局,布局B即为布局B中组件的父容器。
②线性布局中:
没有啥可说的。。。。。。
③帧布局/框架布局:
只有一点值得注意的:它和TabHost一起实现切换卡的功能,改天我会把切换卡放到我的博客里的
④表格布局:
注意< TabRow >的使用
二、控件:
刚才才发现个问题:控件和组件,嘿嘿……不告诉你们……
依旧只是说一些特别的控件,像普通的控件Button、ImageView、EditText等等,这些就没必要说了。
有意思的是EditText作为输入框,比如说:
①EditText里面的提示字(一点对话框就消失,比如登陆界面中的密码输入框上写着“请输入密码”),在控件中加入“ android:hint=”请输入密码” “;
②还有输入框有时候会显示光标,也很简单,< EditText ….> < requestFocus /> < /EditText >;
③还有效果如下图:
方框里的图片,在控件中加入属性” android:drawableLeft=”……”“
其他控件:
①CheckBox和RadioButton:
把这两个一起说,有相同之处
RadioButton:
xml文件:
<RadioGroup android:id="@+id/rg" android:layout_width="fill_parent" android:layout_height="wrap_content" > <RadioButton android:id="@+id/ra1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="JAVA" android:textColor="#000000" /> <RadioButton android:id="@+id/ra2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Android" android:textColor="#000000" /> </RadioGroup>
注意RadioGroup哦
java文件(省略了部分代码):
RadioGroup rg;RadioButton ra1, ra2;rg = (RadioGroup) findViewById(R.id.rg);ra1 = (RadioButton) findViewById(R.id.ra1);ra2 = (RadioButton) findViewById(R.id.ra2);rg.setOnCheckedChangeListener(occl);//只需要给RadioGroup绑定监听,注意监听类型private OnCheckedChangeListener occl = new OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup arg0, int arg1) { if (ra1.isChecked()) { //ra1选中后执行 } else if (ra2.isChecked()) { //ra2选中后执行 } } };
CheckBox:
xml文件:
<CheckBox android:id="@+id/cb1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="篮球" android:textColor="#000000" /><CheckBox android:id="@+id/cb2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@id/cb1" android:layout_below="@id/cb1" android:layout_marginTop="32dp" android:text="足球" android:textColor="#000000" />
Java文件:
CheckBox cb1,cb2;cb1=(CheckBox)findViewById(R.id.cb1);cb2=(CheckBox) findViewById(R.id.cb2);cb1.setOnCheckedChangeListener(occl);//给每个CheckBox绑定监听器,注意监听类型cb2.setOnCheckedChangeListener(occl);private OnCheckedChangeListener occl=new OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton arg0, boolean isChecked) { if(cb1.isChecked()==true){ /*表示第一项被选中*/} if(cb2.isChecked()==true){ /*表示第二项被选中*/} findViewById(R.id.bt1).setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // 附加点击按钮监听 } }); } };
RadioButton和CheckBox总结:首先是监听方式的改变,以前习惯于用简单的方法(.setOnClickListener(new OnClickLisener(){…}))一步到位,但是当这个监听方法被多次使用的时候,再用这种反而有点繁琐,这个时候上述方法就比较实用了,当然也可以用写方法来代替。当然还要对各种各样的监听方法需要去熟悉。另外CheckBox使用起来还有点缺陷:不好获得输入的数据,总觉得给每个CheckBox都绑定一个那么复杂的监听很麻烦。想个方法去解决,待定~~~
一般多选是用在提交用户信息上使用,所以肯定需要点一个按钮来提交,直接给按钮绑定一个点击事件,点击后判断有哪几个选项被选中。这是最简单的方法。
有点困了,先睡一觉。。。。
。。。。。。有兴趣的可以下载一下我的word。
http://download.csdn.net/detail/zhengyikuangge/9319149
0 0
- Android中的布局和控件
- Android中的布局和控件的隐藏和触发显示
- Android中的4.0新布局控件:Space和GridLayout
- Android中的4.0新布局控件:Space和GridLayout
- Android常用控件和布局
- Android获取dialog自定义布局中的控件
- android中如何删除布局中的控件
- android 获取 控件在布局中的位置
- Android获取dialog自定义布局中的控件
- Android获取Dialog自定义布局中的控件
- Android获取dialog自定义布局中的控件
- Android support.v7库中的几种控件,布局控件
- Android support.v7库中的几种控件,布局控件
- android 所有布局属性和UI控件
- android 所有布局属性和UI控件
- android笔记【二】---控件和布局
- android线性布局和基本控件属性
- android 布局属性和UI控件
- Android Selector用法
- leetcode 87:Scramble String
- Identity Build-编译自动加1
- 用于Lucene的各中文分词比较
- Nim游戏博弈(收集完全版)
- Android中的布局和控件
- Android--通知之Notification
- 【LeetCode】Decode Ways
- 漫说代理模式---给宝宝成长护航
- 在Eclipse中创建Maven多模块工程的例子[转载]
- staxon 实现 json 与xml 之间的转换 支持数组,属性
- 中文首字母 排序
- Android中自定义checkbox样式
- XMLHttpRequest cannot load 跨域问题解决