读书人

BlackBerry触摸屏设备编程(一)

发布时间: 2012-12-30 10:43:15 作者: rapoo

【分享】BlackBerry触摸屏设备编程(一)
一 触摸屏幕设计需要注意的地方



开发用于带触摸屏的 BlackBerry? 设备的应用程序时,您应考虑这些设备的以下 UI 功能:

? 触摸屏

? 屏幕方位的重要性

? 触摸屏键盘

? 加速度计(一些带触摸屏的 BlackBerry 设备上)



关于这些项目的具体内容和细节,可以参考blackberry的编程白皮书:BlackBerry Java Application

Transitioning to Touch Screen Development.





二 触摸屏幕的具体编程和设计的要求



随着触摸屏幕手机的引入,BlackBerry也加入了相应API的支持:

net.rim.device.api.ui.Touchscreen

这个类的作用就是系统用来判别当前手机是否是触屏的utility类别,所以一个比较通用的java程序的做法就是在程序入口中加入这样的逻辑判断:

if(Touchscreen.isSupported())

{

/* Touch screen logic */

}

else

{

UiApplication.getUiApplication().invokeLater(new Runnable()

{

public void run()

{

Dialog.alert("This application requires a touch screen device.");

System.exit(0);

}

});

}

在JDE5.0的示例程序中,有一个例子touchdemo,有关于这个工具类的具体使用方法,可以参考相应的代理例子在做一个通用的blackberry客户端程序。



触屏手机的引入,可以加入对屏幕的方向的变化,这个在原有的全键盘手机中是没有的,所以在触摸屏幕手机开发应用过程中,需要加入相应的响应的逻辑.

有两种方式可以用来对屏幕的方位进行控制和调整,第一种方式是在screen的sublayout方法中。



public void sublayout(int width, int height)

{

//update scrren layout based on orientation

if(Display.getOrientation()== Display.ORIENTATION_LANDSCAPE)

{

invalidate();

}

else if(Display.getOrientation()== Display.ORIENTATION_PORTRAIT)

{

invalidate();

}

super.sublayout(width, height);

}



还有一种方式是在应用中显式调用屏幕的方位信息,然后做出调整:

switch(Display.getOrientation())

{

case Display.ORIENTATION_LANDSCAPE:

Dialog.alert("Screen orientation is landscape"); break;

case Display.ORIENTATION_PORTRAIT:

Dialog.alert("Screen orientation is portrait"); break;

case Display.ORIENTATION_SQUARE:

Dialog.alert("Screen orientation is square"); break;

default:

Dialog.alert("Screen orientation is not known"); break;



}



除了对屏幕方位也就是重力切换的处理,在触摸屏幕编程中,需要考虑UI事件的处理和全键盘手机的不同,关于这部分的具体处理,可以参考下面部分的示例以及后续的内容介绍。

本文分享自:http://blog.csdn.net/salvatore_zhang/archive/2010/08/04/5789185.aspx
[解决办法]
触摸屏幕设计需要注意的地方
[解决办法]
这个真的不错

[解决办法]
像楼主学习,。。
[解决办法]
最近也开始接触这方面的东西,不错啊!
[解决办法]
顶起来,很好的文章。

读书人网 >BlackBerry

热点推荐