将自定义 widget 嵌入 Kuix 界面

将自定义 widget 嵌入 Kuix 界面

        在上一篇博客《在 Kuix 框架下绘制自己定义的画布》中,我们谈论了如何在以低级界面实现的 Kuix 框架下绘制自定义画布,以及自定义画布用户事件的加入的问题。我们已经可以使用 Kuix 按照我们的意图来运行自定义的低级界面了。然而关于自定义画布的调用,采用的是显式地 new 的方法:

        这样做不足之处有二:其一,我们自定义的 widget 没有返回按钮,没有标题。也就是说,我们的 widget 全屏显示了,而且没有任何按钮来让用户返回上一步操作,而且也没有标题通知用户当前操作所处的位置;其二,Kuix 所有的界面可以使用 Screen 从 xml 配置文件中读取,也就是说我们看到的任何组件,都可以在 xml 文件中进行配置。显式地 new 出 widget,显然与 Kuix 的框架思路背道而驰。
        如何将自定义 widget 在 kuix 的 xml 文件中进行配置?如何调用我们自定义的 widget?如何将自定义 widget 嵌入 Kuix 界面,和其他 Kuix 组件(比如按钮等)一起显示?我们就在这篇博客中详细地讨论解决这些问题的步骤。
        仍然采用我们在上一篇博客中写的自定义的 widget 的例子,PmapWidget.java 的源代码不变。但是其子类 ChildPmapWidget.java 的源码略有改动。改动后的源代码如下:


        定义一个 Frame,MovMapFrame 来负责显示我们自定义的 widget:


        在项目的 res 下的 xml 文件夹中 加入 CustomMap.xml,其源代码如下:


        然后在我们的 KuixMIDlet 程序中将其父类 org.kalmeo.kuix.core.KuixMIDlet 的 createNewConverterInstance 方法重写:

        运行程序,效果图如下:

运行效果图
        进入这个界面后,我们按下向上键,或者长按向左键,泡泡已经可以运动了;而当我们按下“上一步”按钮后,也可以返回上一个 Frame 了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值