`
flyouting
  • 浏览: 14494 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

黑莓学习笔记之二--布局管理器Manager

阅读更多
    Manager是Srceen排版的类,控制Srceen里Field的位置。相当于android中的垂直布局属性和水平布局属性。只是这里的布局是用一个类来控制的。
   
    Manager有四个子类:
    HorizontalFieldManager
    VerticalFieldManager
    FlowFieldManager
    DialogFieldManager

    1、HorizontalFieldManager以行为单位,每个Field占一行,相当一列多行,如果内容列数量超出Manage高度,设置了滚动条可滚动显示,否则裁剪。每行从屏幕的最左边开始,结束于最右边,所有水平样式用不到这里的UI控件里,可以应用垂直样式,例如:Field.FIELD_TOP.布局方向也可以通过设置样式来控制,比如设置:Field.RIGHT_TO_LEFT 或者 Field.LEFT_TO_RIGHT

    2、VerticalFieldManager以列为单位,每个Field占一列,相当一行多列。内容超宽,没设横向滚动条就被裁剪。每行从屏幕的最上端开始,结束于最下端,所以垂直样式在用不到这里边的UI控件里,可以应用水平样式。

  3、FlowFieldManager在一行中从左到右依次排列Field,如果超宽,自动转到下一行。

  4、DialogFieldManager专门为Dialog定制的,分上下两部分,上部分水平排列两个Field:bitmap和LabeField,代表Dialog的图标和标题;下部分是客户Field区域,按VerticalFieldManager管理。
  

 
  Manager的样式:

    1、滚动条

    VERTICAL_SCROLL:开启垂直滚动

    NO_VERTICAL_SCROLL:关闭垂直滚动

    HORIZONTAL_SCROLL:开启水平滚动

    NO_HORIZONTAL_SCROLL:关闭水平滚动

    VERTICAL_SCROLLBAR:开启显示垂直滚动条

    NO_VERTICAL_SCROLLBAR:不显示垂直滚动条

    HORIZONTAL_SCROLLBAR:开启水平滚动条

    NO_HORIZONTAL_SCROLLBAR:关闭水平滚动条

    2、Manager内Field对齐方式:

    FIELD_TOP:顶对齐

    FIELD_VCENTER:垂直中对齐

    FIELD_BOTTOM:底对齐

    FIELD_LEFT:左对齐

    FIELD_HCENTER:水平中对齐

    FIELD_RIGHT:右对齐

    Screen里的有一个主Manager,它可以嵌套许多个子Mnager,以此形成复杂排版。

    1、在添加子Manager时,要逆序添加Field,不然多数情况出错,这因为父Mnager根据子Manager尺寸来决定自己的尺寸,一旦定下就不会更改。如后添加Field到子Manager,超出父Manager的尺寸会出错,尤其父Manager是HorizontalFieldManager时。

    2、父Manager的Style可以“遗传”到子Manager去。即父Manager定义的Style同样对子Manager有效,但反过来却不行。

    3、要想Scroll滚动有效,Manager里包含的Field必须包括可获得焦点的Field,全是LabelField不起作用。

    先来看一个小例子:
    只显示两个按钮,一左一右,分别是 Clear 和 Submit
    代码如下:
   
public MyScreen() {
		super();
		HorizontalFieldManager _managerBottom = new HorizontalFieldManager();
		add(_managerBottom);
		ButtonField mClearButton = new ButtonField("Clear");
		ButtonField mSubmitButton = new ButtonField("Submit");
		_managerBottom.add(mClearButton);
		_managerBottom.add(mSubmitButton);
}

   


    我们一般都会把这两个按钮居中,其实加一个样式就可以了,相当于android中的layout_gravity。
   
HorizontalFieldManager _managerBottom = new HorizontalFieldManager(Field.FIELD_HCENTER);




    下边这个例子就稍微复杂点,就是为了弄懂这个布局是怎么回事的。

   
package mypackage;

import net.rim.device.api.ui.Manager;
import net.rim.device.api.ui.component.ButtonField;
import net.rim.device.api.ui.component.LabelField;
import net.rim.device.api.ui.container.HorizontalFieldManager;
import net.rim.device.api.ui.container.MainScreen;
import net.rim.device.api.ui.container.VerticalFieldManager;

/**
 * A class extending the MainScreen class, which provides default standard
 * behavior for BlackBerry GUI applications.
 */
public final class MyScreen extends MainScreen {
	/**
	 * Creates a new MyScreen object
	 */
	public MyScreen() {
		super();

		Manager manS;

		manS = this.getMainManager();

		HorizontalFieldManager manV = new HorizontalFieldManager(
				Manager.FIELD_HCENTER | Manager.HORIZONTAL_SCROLL);

		VerticalFieldManager man1 = new VerticalFieldManager();

		VerticalFieldManager man2 = new VerticalFieldManager();

		HorizontalFieldManager man3 = new HorizontalFieldManager();

		VerticalFieldManager man4 = new VerticalFieldManager();

		HorizontalFieldManager man5 = new HorizontalFieldManager();

		int i;

		for (i = 1; i < 13; ++i) {

			man2.add(new ButtonField("No" + String.valueOf(i)));

			man3.add(new ButtonField("No" + String.valueOf(i)));

			man4.add(new LabelField("No" + String.valueOf(i)));

			man5.add(new ButtonField("No" + String.valueOf(i)));

		}

		man1.add(man3);

		man1.add(man4);

		man1.add(man5);

		manV.add(man1);

		manV.add(man2);

		manS.add(manV);

	}
}







  
  • 大小: 2.1 KB
  • 大小: 67.1 KB
  • 大小: 17.5 KB
  • 大小: 17.7 KB
1
0
分享到:
评论

相关推荐

    黑莓学习笔记之一----进度条

    本篇"黑莓学习笔记之一----进度条"着重讨论了如何在黑莓(BlackBerry)平台上实现和使用进度条功能。Blackberry是一个历史悠久的移动操作系统,尽管现在已被更现代的系统取代,但其开发经验对于理解移动应用的UI设计...

    黑莓学习笔记之三--对话框和菜单栏

    本文将深入探讨“黑莓学习笔记之三——对话框和菜单栏”这一主题,主要关注这两个UI元素在黑莓应用开发中的实现和使用。对于黑莓开发者而言,理解和掌握对话框和菜单栏的使用能够极大地提升应用的用户体验。 对话框...

    黑莓桌面管理器 BlackBerry Desktop Manager 5.0.1 B73多国语言版

    ### 黑莓桌面管理器 BlackBerry Desktop Manager 5.0.1 B73多国语言版 #### 一、概述 黑莓桌面管理器(BlackBerry Desktop Manager)是为黑莓设备设计的一款桌面软件,旨在帮助用户更高效地管理其黑莓手机上的数据...

    黑莓桌面管理器4.2

    黑莓桌面管理器4.2的核心功能之一是数据同步。用户可以通过该工具将手机上的联系人、日历、任务、笔记等个人信息管理应用的数据与电脑上的Outlook或其他兼容的PIM(个人信息管理)软件同步,确保在多设备间的信息...

    BlackBerry入门教程---黑莓手机软件安装方法.pdf

    桌面管理器是 BlackBerry 与电脑连接必备的工具,利用它可以装软件、备份信息、同步、刷机等。安装方法很简单,大家可以在 Maxpda 首页的软件下载频道下载 desktop manager,然后按照提示安装。 使用桌面管理器安装...

    黑莓4.1桌面管理器

    黑莓4.1桌面管理器,老手机必备软件,都失传了。

    BlackBerry入门教程---黑莓手机软件安装方法借鉴.pdf

    其次,WinLoader是一款强大的第三方管理工具,它无需桌面管理器,仅需正确安装BlackBerry的USB驱动,就能在任何电脑上进行软件的安装和管理。通过WinLoader,可以选择“安装COD”来安装软件,或者设置文件关联,实现...

    黑莓桌面管理器

    首先,黑莓桌面管理器的核心功能之一就是数据同步。它可以将用户的联系人、日历、任务、记事本等个人信息管理(PIM)数据与Outlook或其他兼容的电子邮件客户端同步。这样,用户可以在电脑和手机之间轻松转移信息,...

    黑莓4.5 黑莓软件管理器

    **黑莓4.5黑莓软件管理器详解** 在移动通信领域,黑莓手机以其独特的全键盘设计和高效的企业级电子邮件服务赢得了用户的喜爱。而黑莓4.5操作系统是其中的一个重要版本,它提升了用户体验,增加了多项功能。本文将...

    黑莓文件管理器FileManagerPro注册版

    《黑莓文件管理器FileManagerPro注册版》是一款专为黑莓设备设计的高效文件管理工具,尤其适合运行在4.5及以上系统的用户。这款应用以其强大的功能和便捷的操作体验,深受黑莓用户的喜爱。其中,它的一个显著特点是...

    黑莓文件管理软件 File Manager Pro v1.7.0.2 注册版.rar

    本文将详细介绍专为黑莓手机设计的File Manager Pro v1.7.0.2 注册版,带你深入理解这款强大的文件管理工具。 File Manager Pro 是一款专为黑莓手机量身打造的高级文件管理应用,旨在提供更便捷、高效的文件操作...

    BlackBerry应用程序开发者指南-基础卷+高级卷(pdf).rar

    4. **用户界面设计**:讲解如何创建和管理BlackBerry应用的图形用户界面(GUI),包括控件、布局和事件处理。 5. **应用生命周期管理**:介绍应用在不同状态(如启动、暂停、恢复和退出)下的行为,以及如何正确...

    黑莓手机8830 浏览器 opera-mini-4.4

    【标签】中的“黑莓手机8830”代表了这款经典的黑莓智能手机,它运行BlackBerry OS操作系统,拥有物理键盘和相对较小的显示屏,是早期智能手机的代表之一。“浏览器”表明我们关注的是该设备上的网络浏览功能,而...

    黑莓桌面管理器OS7.1

    **黑莓桌面管理器OS7.1详解** 黑莓桌面管理器OS7.1是一款专为黑莓手机用户设计的强大管理工具,它允许用户在个人电脑上与黑莓设备进行无缝连接,实现数据同步、备份、恢复以及软件更新等多种功能。这款管理器支持...

    BlackBerry_Java_SDK-UI 快速指南.pdf

    #### 二、BlackBerry设备用户输入和导航(第7页) - **触摸屏交互**: - **基本概念**:掌握触摸屏的基本工作原理和常见手势。 - **事件处理**:学会如何编写代码来响应触摸、点击、双击等事件。 - **轨迹球/触控...

    黑莓 Gtalk----Btalk

    【标题】:“黑莓 Gtalk----Btalk”指的是BlackBerry设备上的一款专为Gtalk(Google Talk)设计的应用程序——Btalk。Btalk是由Geek社区开发的,它为黑莓用户提供了与Gtalk服务无缝集成的功能,允许用户在他们的...

Global site tag (gtag.js) - Google Analytics