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

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

阅读更多
    最近突然想把自己公司的项目移植到黑莓上来,因为听说黑莓的app挺少的,而且黑莓开发貌似比较繁琐,不如android和iPhone的便捷,反正闲着没事,就买了本书,找了点资料开始学习学习。学一点记录一点吧。

    一般项目里最一开始都会有一个进度条加载,然后是主界面或者是登录界面,那就先看看这个进度条是怎么做的。
   
   
package mypackage;

import net.rim.device.api.ui.component.GaugeField;
import net.rim.device.api.ui.component.LabelField;
import net.rim.device.api.ui.container.PopupScreen;
import net.rim.device.api.ui.container.VerticalFieldManager;

public class GaugeScreen extends PopupScreen {

	public GaugeScreen(){
		super(new VerticalFieldManager(), VerticalFieldManager.VERTICAL_SCROLL);
		add(new LabelField("Loading"));
		
		//public GaugeField(String label,int min,int max,int start,long style);
		GaugeField percentGauge = new GaugeField("",0,100,0,GaugeField.PERCENT);
		
		add(percentGauge);
	}
	// TODO Auto-generated constructor stub}

}

   
    自定义一个popupScreen,其中加入一个文字标识:“Loading”,加入一个进度条控件,进度条控件的构造方法是public GaugeField(String label,int min,int max,int start,long style); 其中参数的含义是

    label - Optional label for the gauge (may be null).//标识的字符串
    min - Bottom of the value range. //最小值
    max - Top of the value range.  //最大值
    start - Initial progress level of this field.  //起始值
    style - Style value(s) for this field. //进度条的风格
    风格包含有(Field.FOCUSABLE, Field.EDITABLE, GaugeField.NO_TEXT, GaugeField.PERCENT).

   
package mypackage;

import net.rim.device.api.ui.UiApplication;
import net.rim.device.api.ui.component.GaugeField;
import net.rim.device.api.ui.container.PopupScreen;

public class UpdaterThread extends Thread {
	PopupScreen screen;
	int i;
	public UpdaterThread(PopupScreen screen){
		this.screen = screen;
	}
	
	public void run(){
		for(i = 0;i<100;i++){
			try{
				Thread.sleep(1000);
			}catch(Exception e){
				e.printStackTrace();
			}
		UiApplication.getUiApplication().invokeLater(new Runnable() {
			
			public void run() {
				// TODO Auto-generated method stub
				GaugeField Gauge = (GaugeField) screen.getField(1);
				Gauge.setValue(i);
			}
		});
		}
	}
	
	
}


    自定义一个线程去控制进度条的数值大小,我们需要把刚才的Screen穿进去,然后有一个方法public final void invokeLater(Runnable runnable),这个方法可以把Runnable对象到这个应用程序的事件队列中。在所有调度事件处理后,会处理此Runable对象的拥有者。其实就是相当于一个线程队列。
    这个被成为延迟调用的方法,多数用于既执行了自己的操作,又不影响原本程序的运行。比如调起一个错误信息的提示对话框。在后台线程中更新前台的UI,多数也是用到了这个方法来延迟更新。
   
    剩下的就是添加一个菜单项,来处理这个,当点击了菜单项时,演示这个进度条。

   
protected void makeMenu(Menu arg0, int arg1) {
		// TODO Auto-generated method stub
		MenuItem newItem = new MenuItem("Build", 100, 10){
			public void run(){
				GaugeScreen screen = new GaugeScreen();
				UiApplication.getUiApplication().pushScreen(screen);
				UpdaterThread thread = new UpdaterThread(screen);
				thread.start();
			}
			
		};
		arg0.add(newItem);
		super.makeMenu(arg0, arg1);
	}








  • 大小: 61.4 KB
1
1
分享到:
评论
1 楼 huayuehen522 2012-11-06  
感谢....黑莓demo好难找

相关推荐

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

    本文将以“黑莓学习笔记之二--布局管理器Manager”为主题,深入探讨黑莓平台上的布局管理器及其使用技巧。 黑莓操作系统(BlackBerry OS)提供了一套强大的布局管理工具,称为Manager类,用于组织和控制应用程序的...

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

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

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

    WinLoader 是一个强大的 BlackBerry 管理程序,有了它可以在任何地方的电脑上安装 BlackBerry 程序。安装方法也很简单: a. 安装 WinLoader,然后连接 BlackBerry 手机 b. 选择“安装 cod”,然后选择下载的软件...

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

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

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

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

    BlackBerry 应用程序开发者指南-高级-final

    这一版本是当时BlackBerry设备上广泛使用的操作系统之一,因此了解其具体的技术细节对于开发者而言至关重要。 #### 受控API的使用 - **BlackBerry受控API**:这部分重点讲解了BlackBerry为了安全考虑而设置的受控...

    黑莓 Gtalk----Btalk

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

    cocos2dx进度条

    - proj.mac、proj.marmalade、proj.linux和proj.blackberry分别对应Mac OS X、Marmalade SDK、Linux和BlackBerry平台的项目设置,意味着进度条的实现也适用于这些系统。 5. **Resources**: - 这个文件夹通常存储...

    BlackBerry_PlayBook_Tablet-T1526983-1526983-0213114900-011-2.0-ZH

    PlayBook中文说明书,BlackBerry_PlayBook_Tablet-T1526983-1526983-0213114900-011-2.0-ZH.pdf

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

    2. **BlackBerry编程语言**:BlackBerry支持Java ME(Micro Edition)和 BlackBerry Native SDK,开发者可能需要学习这些语言的基本语法和特性。 3. **RIM API理解**:RIM API是BlackBerry平台提供的接口,允许...

    黑莓 jad<----->cod 转换 alx生成

    jad文件不包含实际的代码,而是提供了一个指向cod文件的链接,告诉黑莓设备在哪里可以找到并下载执行的代码。 **cod文件** cod(Code)文件是黑莓应用的实际可执行代码,它包含了编译后的Java字节码。每个cod文件...

    BlackBerry应用程序开发者指南-基础卷

    - **编写一个例程**:通过一个简单的例子,展示了如何构建一个基本的BlackBerry应用程序。 - **扩展UiApplication基类**:解释了如何通过继承UiApplication类来实现应用程序的启动和管理。 - **定义main()**:...

    黑莓手机开发笔记-很好的资源的

    首先,配置黑莓浏览器开发环境是开始开发之旅的第一步。在Windows XP或Windows 7操作系统下,你需要安装Java JDK 6.0或更高版本。你可以从Oracle的官方网站下载JDK,并按照提示进行安装。接下来,你需要下载包含...

    BlackBerry应用程序开发者指南-初级

    BlackBerry应用程序开发者指南-初级汉化版本。 本文档由Taiguo Zhang 个人翻译完成 联系方式: Email: confach@gmail.com MSN: confach@hotmail.com Blogs: http://confach.cnblogs.com http://www.36sign.com ...

    BlackBerry_Java_SDK-UI 快速指南.pdf

    #### 一、创建与BlackBerry标准UI一致的界面(第6页) - **理解BlackBerry UI设计原则**:掌握如何设计符合BlackBerry风格的应用程序界面。 - **熟悉UI组件库**:学习BlackBerry提供的各种UI组件及其用途,包括按钮...

    BlackBerry应用程序开发者指南-基础卷+高级卷(中文)

    在移动应用开发领域,BlackBerry曾是重要的平台之一,为开发者提供了独特的机遇。这份“BlackBerry应用程序开发者指南”分为基础卷和高级卷,全面覆盖了从入门到精通的整个过程,对于想要在BlackBerry平台上构建应用...

    BlackBerry-UI-guidelines-CHS

    【黑莓UI设计指南】 黑莓UI设计指南主要关注如何为黑莓智能手机创建高效、用户友好的应用程序。设计原则在于平衡用户体验与电池寿命,考虑到手机设备的独特性,如较小的屏幕、较慢的处理器速度、有限的内存以及较短...

Global site tag (gtag.js) - Google Analytics