首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > BlackBerry >

【连载】BlackBerryUI设计大全(4)

2012-12-17 
【连载】BlackBerryUI设计大全(四)2基于Third party的UI库的设计直接使用MIDP的UI组件来做应用界面和接口,很

【连载】BlackBerryUI设计大全(四)
2基于Third party的UI库的设计

直接使用MIDP的UI组件来做应用界面和接口,很多时候需要大量的编程和设计工作。为了减轻开发者的负担,J2ME平台上也有很多这样的UI设计支撑库,本节我们一LWUIT这个应用比较广泛的例子为例,说明如果在BlackBerry J2ME平台上使用GUI Library去设计这个九宫格程序。
2.1 基于LWUIT的UI库的设计规范

The Lightweight UI Toolkit (LWUIT) 是一个轻量级JavaME UI工具包。LWUIT类似Swing 的MVC架构, 支持多种布局(Layouts), 皮肤更换, 字体, 触摸屏, 动画效果, Rich控件, 3D集成, Painter, 模式对画框, I18N/L10N等。

  Sun在2008年的JavaOne会议上向开发者社区推荐了LWUIT,展示了预先发布的二进制文件库,附加工具和扩展文档,让开发者可以快速上手,现在Sun把整个源代码都开放出来,更方便开发者利用LUWIT开发JavaME应用。关于LWUIT库的使用,可以从SUN的官方网络拿到基本示例和说明的文档。

九宫格说白了就是几个按钮,摆的整整齐齐。既然是这样就先做个MainForm,采用GridLayout()布局,然后在Form里面做几个按钮,每一个按钮代表一个Form。

具体步骤如下:

1.在MainForm中以GridLayout形式排列九个按钮

2.建立一个BaseForm,添加一个BackCommand

3.创建9个Form继承自BaseForm。

public class MainForm extends Form implements ActionListener {

    public static String currentText;

    Command Option_CMD = new Command("选项", 0);

    Command Exit_CMD = new Command("退出", 1);

    public MainForm() {

    //设置窗体翻转效果

        Transition in = CommonTransitions.createSlide(CommonTransitions.SLIDE_HORIZONTAL, false, 300);

        setTransitionInAnimator(in);

        //设置这个currentText,是为了在点击某个按钮进入某个Form,然后回退时,焦点仍然在这个按钮上

        if (currentText == null) {

            currentText = "我的空间";九宫格说白了就是几个按钮,摆的整整齐齐。既然是这样就先做个MainForm,采用GridLayout()布局,然后在Form里面做几个按钮,每一个按钮代表一个Form。

 

       setLayout(new BorderLayout());

        getTitleComponent().setVisible(false);

        try {

           

            String[] texts = new String[]{

                "menu1",

                "menu2",

                "menu3",

                "menu4",

                "menu5",

                "mene6",

                "menu7",

                "menu8",

                “menu9”};

            /*

           下面是基于LCDUI页面布局的主要框架代码

            */

            Container buttonContainer = new Container(new GridLayout(3, 3));



            for (int i = 0; i < texts.length; i++) {

                Image unsel_img = r2.getImage(imgNames[i] + ".png");

                final Button b = new Button(texts[i], unsel_img);

                //setRolloverIcon当按钮被选中时

                b.setRolloverIcon(r2.getImage(imgNames[i] + "_sel.png"));

                b.setAlignment(Label.CENTER);

                b.setTextPosition(Label.BOTTOM);

                b.setUIID("DemoButton");

                buttonContainer.addComponent(b);

            }

            addComponent(BorderLayout.CENTER, buttonContainer);

            addCommand(Option_CMD);

            addCommand(Exit_CMD);

            addCommandListener(this);

            show();

        } catch (IOException ex) {

            ex.printStackTrace();

        }

    }

    }

    }

}

最后LWUIT实现的效果,和我们基于MIDP高级UI的效果比较相像。这里需要注意是,在BlackBerry上使用第三方jar库的时候,需要把相应的JAR库转成BlackBerry上可以运行的cod文件。

为什么要讨论3rd-party的UI library,也是为了突出BlackBerry自己的UI Library的效果,在KVM平台上的应用UI设计,BlackBerry的UI Library是独树一帜的。
3基于BlackBerry的UI组件的设计

使用过类似LWUIT的布局组件,再使用BlackBerry原生的UI组件来设计UI就会发现这个非常熟悉。

Blackberry的UI组件功能更多,使用更加灵活也更加便捷,关于BlackBerry的UI基本组件的应用介绍,可以参阅BlackBerry基本UI设计

了解基本UI的设计方法之后,通过BlackBerry的UI布局组件,可以设置铺放UI组件到BlackBerry屏幕的效果,可以得到一个完成的基于BlackBerry UI组件和屏幕布局实现的九宫格程序的介绍。这里就不详细叙述了。


本文来自:http://blog.csdn.net/salvatore_zhang/archive/2010/08/05/5791054.aspx
[最优解释]
太感谢楼主分享了。顶一个!
[其他解释]
很好很强大 先收藏了
[其他解释]
很好啊。真的很强大,收草
[其他解释]
谢谢LZ,收藏学习。。顶!!!
[其他解释]
谢谢LZ,收藏学习。。顶!!!
[其他解释]
Z,收藏学习。。顶!!!
[其他解释]
我想学习FORTRAN 谢谢大家的斑竹

[其他解释]
我也正在看黑莓的材料呢,lz的资料很好啊


[其他解释]
对这个没兴趣~!
[其他解释]
值得学习~~
[其他解释]
值得学习~~
[其他解释]
值得学习~~
[其他解释]
学习了!!!!!!!!!!
[其他解释]
Z,收藏学习。。顶!!!
[其他解释]
学习了
[其他解释]
好,真有用啊 
[其他解释]
收藏学习。。顶!!!
[其他解释]
黑莓开发~ ... 想说爱你不容易.
[其他解释]
没用过这方面的。。
[其他解释]
收藏学习。。顶!!!
[其他解释]
论坛不好使了..
[其他解释]
好  非常好
[其他解释]
活到老学到老  收藏一个
[其他解释]
   好~~!
[其他解释]
呵呵vdfv 地方隔热
[其他解释]
henhaoa,bucuo
[其他解释]
强大干活呢后果由国家也很高分
[其他解释]
谢谢LZ,收藏学习。。顶!!!
[其他解释]
拿过来看看啊,希望能用到
[其他解释]
很好,哼强大的
[其他解释]
漂亮啊1!!!我喜欢

[其他解释]
路过那分数的
[其他解释]
好东西
[其他解释]
不错!
[其他解释]
不错呀
[其他解释]
学习!
[其他解释]
看不懂。。。。。。。。。。。。。。。。。。。。。。。
[其他解释]
很好很强大
[其他解释]
很好很强大
[其他解释]
谢谢LZ,收藏学习。。顶!!!
[其他解释]
该回复于2010-08-13 17:26:23被版主删除
[其他解释]
该回复于2010-08-13 16:36:02被版主删除
[其他解释]
该回复于2010-08-13 16:37:37被版主删除


[其他解释]
该回复于2010-08-13 17:28:03被版主删除
[其他解释]
该回复于2010-08-13 17:01:55被版主删除
[其他解释]
该回复于2010-08-13 17:02:37被版主删除
[其他解释]
该回复于2010-08-14 09:34:26被版主删除
[其他解释]
该回复于2010-08-14 09:37:58被版主删除
[其他解释]
xzcasdvdsfvcx cvxbzdfbcxvcxv
[其他解释]
该回复于2010-08-14 09:40:43被版主删除
[其他解释]
该回复于2010-08-14 09:40:43被版主删除
[其他解释]
该回复于2010-08-14 11:04:28被版主删除
[其他解释]
该回复于2010-08-14 09:40:43被版主删除
[其他解释]
该回复于2010-08-14 11:04:28被版主删除
[其他解释]
该回复于2010-08-16 17:25:27被版主删除
[其他解释]
该回复于2012-08-28 09:29:23被版主删除
[其他解释]
该回复于2010-08-14 09:44:05被版主删除
[其他解释]
该回复于2010-12-03 10:16:08被版主删除
[其他解释]
该回复于2010-08-16 17:25:27被版主删除
[其他解释]
很好很强大
[其他解释]
很好 很强大
[其他解释]
恩 说的好  我想要积分
[其他解释]
BUCUO ,FEICHANG GANXIE
[其他解释]
该回复于2010-08-16 10:49:42被版主删除
[其他解释]
Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488
[其他解释]
Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488Thunder5.9.23.1488
[其他解释]
vnbvnnmb
[其他解释]
值得学习~~学习了!!!!!!!!!!
[其他解释]
太好了!
[其他解释]
谢谢LZ,收藏学习。。顶!!!
[其他解释]
多谢多谢,收藏一下
[其他解释]
Thunder5.9.23.1488
------其他解决方案--------------------


该回复于2010-08-16 10:23:35被版主删除
[其他解释]
好厉害,
[其他解释]
先不说算法,感觉你这个代码定义有点问题
1、q定义时无需new
2、各变量定义类型应该是链表类型LinkList,而不是Node


面试官的方法:
从链表的开始循环到结束,然后从最后一个结点开始往前依次交换结点。
================
单向链表,怎么往前依次呢?把这个解决了算法就简单了

[其他解释]
恩 说的好 我想要积分
[其他解释]
该回复于2010-08-16 13:48:23被版主删除
[其他解释]
支持开源,支持共享
[其他解释]
该回复于2010-08-16 13:52:03被版主删除
[其他解释]
拿来试一下,谢谢楼主
[其他解释]
该回复于2010-08-17 09:52:52被版主删除
[其他解释]
不错,不错
[其他解释]
该回复于2010-08-17 10:19:57被版主删除
[其他解释]
不错,D!!!!!
[其他解释]
定,很好
[其他解释]
该回复于2010-08-16 15:10:53被版主删除
[其他解释]
很好,收藏了
[其他解释]
该回复于2010-08-16 16:46:20被版主删除
[其他解释]
收藏了 谢谢楼主
[其他解释]
关注中。。。
[其他解释]
该回复于2010-12-30 13:15:55被版主删除
[其他解释]
呵呵  不错哦
[其他解释]
该回复于2010-08-17 16:35:09被版主删除
[其他解释]
该回复于2010-11-17 15:46:51被版主删除
[其他解释]
该回复于2010-08-19 11:08:33被版主删除

热点排行