黑莓:简单方法解决两个以上 Field 左右排列的问题
2010-01-29 20:18
561 查看
最近需要做黑莓开发,在排列控件的时候遇到了一个问题:两个甚至多个Field如何排列到一行,并且左边的控件靠屏幕左边,右这的控件靠屏幕右边?
用过黑莓手机的莓友都知道,系统自带的软件有很多是左边显示文字性的标题,右边显示输入框或下拉列表等。
黑莓目前自带的排列控件有
HorizontalFieldManager(水平排列)、
VerticalFieldManager(垂直排列)、
FlowFieldManager(水平排列满时自动往下排列)、
DialogFieldManager(对话框上的排列,用于显示对话框)
对于上面提到的问题,经过实践,如果只用HorizontalFieldManager是做不到的,那么我们应该怎样去实现需求呢?
tiandi79提到了扩展黑莓的 HorizontalFieldManager 达到效果:
http://blog.csdn.net/tiandi79/archive/2009/12/21/5046706.aspx
但是这样要写比较多的代码,如果一行要排三个甚至更多的Field呢?我相信黑莓应该会考虑到这一点,于是通过摸索,终于找到了不错而且简单的方法:
这点代码希望能够帮到更多遇到同类问题的朋友!
用过黑莓手机的莓友都知道,系统自带的软件有很多是左边显示文字性的标题,右边显示输入框或下拉列表等。
黑莓目前自带的排列控件有
HorizontalFieldManager(水平排列)、
VerticalFieldManager(垂直排列)、
FlowFieldManager(水平排列满时自动往下排列)、
DialogFieldManager(对话框上的排列,用于显示对话框)
对于上面提到的问题,经过实践,如果只用HorizontalFieldManager是做不到的,那么我们应该怎样去实现需求呢?
tiandi79提到了扩展黑莓的 HorizontalFieldManager 达到效果:
http://blog.csdn.net/tiandi79/archive/2009/12/21/5046706.aspx
但是这样要写比较多的代码,如果一行要排三个甚至更多的Field呢?我相信黑莓应该会考虑到这一点,于是通过摸索,终于找到了不错而且简单的方法:
HorizontalFieldManager hfm = new HorizontalFieldManager(Field.USE_ALL_WIDTH); LabelField title = new LabelField("左边"); VerticalFieldManager leftCol = new VerticalFieldManager(); leftCol.add(title); VerticalFieldManager rightCol = new VerticalFieldManager(Field.USE_ALL_WIDTH|Field.FIELD_RIGHT); HorizontalFieldManager rightColFields = new HorizontalFieldManager(Field.FIELD_RIGHT); ButtonField btnLogin = new ButtonField("按钮1", Field.FIELD_RIGHT); ButtonField btnReg = new ButtonField("按钮2", Field.FIELD_RIGHT); rightColFields.add(btnLogin); rightColFields.add(btnReg); rightCol.add(rightColFields); hfm.add(leftCol); hfm.add(rightCol);
这点代码希望能够帮到更多遇到同类问题的朋友!
相关文章推荐
- varnish3.0以上问题及解决方法收集
- 简单的Junit和Maven结合应用(Maven项目怎么进行Junit单元测试以及常见问题解决方法)
- Ubuntu vi 上下左右变ABCD问题解决方法
- 简单内存泄漏检测方法,解决Detected memory leaks!问题
- Ubuntu vi 上下左右变ABCD问题解决方法
- Field 'id' doesn't have a default value问题解决方法
- Android RadioGroup中设置默认选中RadioButton 后,选中两个的问题 解决方法
- U盘安装centos7.1出现dracut问题的超简单解决方法
- 一个简单行列转化问题的简单解决方法。
- ios7以上,导航栏的按钮会出现向中间偏移问题的解决方法
- 简单内存泄漏检测方法 解决 Detected memory leaks! 问题
- 简单方法解决bootstrap3 modal异步加载只一次的问题
- 简单内存泄漏检测方法 解决 Detected memory leaks! 问题
- 两个简单方法快速解决怎么把kux格式转mp4
- 本人原创!解决安卓ListView复用问题最简单的两种方法。
- 【Linux】U盘安装Centos6.3遇到的两个重要问题及其解决方法
- Dynamics CRM2016 The value of field on record of type entity is outside the valid range问题的解决方法
- 使用DotNetNuke(DNN) Startkit 4.7(及以上版本)安装无法完成问题的解决方法
- Ubuntu vi 上下左右变ABCD问题解决方法
- flask-wtf表单中PasswordField无法回传显示密码问题解决方法