- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
BlackBerry 高级UI设计.pdf
BlackBerry 高级UI 设计
作者:王志刚
概论 3
1 基于MIDP 的UI 设计4
1.1 MIDP 高级UI 4
1.2 MIDP 低级UI 6
2 基于Third party 的UI 库的设计 9
2.1 基于LWUIT 的UI 库的设计规范 9
3 基于BlackBerry 的UI 库的设计 11
4 基于SVG 的UI 设计 11
4.1 什么是SVG 11
4.2 Mobile 上的svg 12
4.3 RIM 上的svg 12
5 基于BlackBerry Widget 的UI 设计 18
概论
这篇文档讲述的是如何在BlackBerry 设备上应用的UI 效果,文档的介绍的内容包括如下部分:
1. 基于MIDP 的UI
2. 基于3rd-party 的UI library 的应用
3. 基于BlackBerry UI 组件的应用
4. 基于SVG(JSR 226) 的UI 设计
5. 基于Widget 的UI 设计
本文的组成部分是以以一个传统移动应用的九宫格程序的UI 设计和实现为范例,讨论并着重介绍
了在BlackBerry 平台上设计UI 需要考虑和借用的技术,更好的包装BlackBerry 的应用
通过对UI 应用的讨论,本文也涉及到了在BlackBerry 应用开发中如何和第三方应用Library 集成,
BlackBerry 上的网络应用开发等等方面的知识,文中涉及到的参考文档,都可以从RIM 中国开发
论坛上下载得到。
在阅读和参考本篇文档时,读者应该对BlackBerry 上的基本开工具和开发过程有些了解,如果想
参阅这些内容,可以参阅BlackBerry 中国。
1 基于MIDP 的UI 设计
上面的图是整个MIDP 中的LCDUI 包的组成结构,这个包包括完整的MIDLP 高级和低级UI 库。
1.1 MIDP 高级UI
我们在这一节要介绍LCDUI 库的具体组成类图。Screen 类系属于高级图形用户界面组件,Canvas
是低级图形用户界面组件,在同一时刻,只能有唯一一个Screen 或者Canvas 类的子类显示在屏
幕上。
使用高级界面,但是九宫格这样的屏幕铺放应用的实现是想不到好的办法,本身没有合适的控件可以
完成这个任务。一种可能的办法是通过定制高级UI 组件里面的元素,比如CustomItem, 用他来绘
制定宫格。本例就是使用CustomItem 来实现了一个九宫格效果,效果如下图所示
源代码如下所示:
public class GridItem extends CustomItem {
private Image image;
public MyItem(Image image, String title,int width,int height)
{
this.image = image;
}
public void paint(Graphics g, int w, int h)
{
g.drawImage(this.image, w/2, 0, Graphics.HCENTER | Graphics.TOP);
g.drawString(this.title, w/2, h - g.getFont().getHeight(), Graphics.HCENTER | Graphics.TOP);
}
通过对 Form 的定制item 设置背景图片,找到一个work around 的办法,放置我们的九宫格图标,
剩下的就是对Form 主程序的设置了
Form f = new Form(CustomItem);
int tempWidth = f.getWidth() / 4;
int tempHeight = 60;
for(int i = 0; i 9;i++)
{
String imgSrc = /img/ + i + .png;
try
{
Image img = Image.createImage(imgSrc);
MyItem mi = new MyItem(img,String.valueOf(i) + item,tempWidth,tempHeight);
mi.setLayou
文档评论(0)