(16)Android布局方式里面LayoutParams的用法
来源:互联网 发布:傲剑紫霞神功升级数据 编辑:程序博客网 时间:2024/05/17 03:56
最近为各个布局下的水平垂直居中搞烦了。因为是动态构建的布局,一些在XML里面很好写的居中,动态JAVA代码里不知道么样实现,今天终于再了解了其中的意思。
首先第一点也是最先应该了解的:
setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
这一句话其实是子对父的,也就是父布局下的子控件要设置这句话,并且由于布局很多,也不同,虽然都继承至ViewGroup但是各个布局的局性和方法有很大的不同。很显然上面这句应该这样写才算准确:
setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.FILL_PARENT,
TableRow.LayoutParams.FILL_PARENT));
这表示这个子控件的父布局是一个TableRow , 这样的LayoutParams 太多,所以应明确指明。下面分别说下两个常用到布局:
1. FrameLayout下动态设置子控件居中:
在XML文件中只用设置这个属性:
动态用JAVA代码要这样实现:
FrameLayout.LayoutParams btnLytp = new FrameLayout.LayoutParams(80,LayoutParams.WRAP_CONTENT);
btnLytp.gravity = Gravity.CENTER;
btnMemo.setLayoutParams(btnLytp);
2. RelativeLayout下动态设置子控件居中:
在XML下配置RelativeLayout非常简单,设置对应属性就好。
JAVA代码动态实现则用到这个方法了:
1. FrameLayout下动态设置子控件居中,动态用JAVA代码要这样实现:
FrameLayout.LayoutParams lytp = new FrameLayout.LayoutParams(80,LayoutParams.WRAP_CONTENT);lytp .gravity = Gravity.CENTER;btn.setLayoutParams(lytp);
2. RelativeLayout下动态设置子控件居中:
RelativeLayout.LayoutParams lp=new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT, RelativeLayout.TRUE); lp.addRule(RelativeLayout.ALIGN_PARENT_TOP, RelativeLayout.TRUE); btn1.setLayoutParams(lp);
- (16)Android布局方式里面LayoutParams的用法
- 关于Android下各个布局方式里面LayoutParams的用法
- 关于Android下各个布局方式里面LayoutParams的用法
- 关于Android下各个布局方式里面LayoutParams的用法
- 关于Android下各个布局方式里面LayoutParams的用法
- (android中的动态布局)关于Android下各个布局方式里面LayoutParams的用法
- 关于Android下常用布局的LayoutParams的用法
- Android LayoutParams的用法
- Android LayoutParams的用法
- android LayoutParams的用法
- Android中LayoutParams的用法
- Android中LayoutParams的用法
- Android中LayoutParams的用法
- Android中LayoutParams的用法
- Android中LayoutParams的用法
- Android开发:LayoutParams的用法
- Android开发:LayoutParams的用法
- Android中LayoutParams的用法
- 如果宏安全性设置为“禁用所有宏,并且不通知”,将自动禁用所有宏。使用下列步骤可启用宏。
- EA(Enterprise Architect)修改字体大小
- 字符串与指针
- Cocos2d-x常见问题汇总 第二期
- SMTP POP3 命令
- (16)Android布局方式里面LayoutParams的用法
- 每天一个linux命令(九月)
- 深入理解Python的包机制
- TS流解析 ffmpeg
- proc/c++
- 百亿空白市场,期待有识之士加盟。
- linux内核分析笔记----中断和中断处理程序
- CSU-1401: 插入排序
- 扇形陷阱(Fan Traps)& 断层陷阱(Chasm Traps)