中国领先的IT技术网站
|
|

S40 Touch API - Text Editor API

TextEditor是一个可编辑的文本组件,它直接绘制在Canvas或CustomItem上。

作者:max.chen来源:NOKIA Developer|2013-01-25 14:56

Tech Neo技术沙龙 | 11月25号,九州云/ZStack与您一起探讨云时代网络边界管理实践


TextEditor是一个可编辑的文本组件,它直接绘制在Canvas或CustomItem上。

有过游戏编程经验的工程师一定碰到过需要在游戏中输入中文的情况。遇到这种情况,不是索性用输入英文或拼音字母代替,就是将界面切换到使用控件的窗口,待输入完中文后,再返回游戏页面。TextEditor的实现,彻底解决了这个问题。

TextEditor的主要方法包括:

boolean register( x, y, maxFps, maxPps, FrameAnimatorListenerlistener)
void unregister()
boolean isRegistered()
static int getNumRegisteredFrameAnimators();
void drag(x, y)
void kineticScroll( int startSpeed, int direction, int friction, float angle )
void stop()

在创建TextEditor的实例的时候,不是使用常用的new()方法,而是通过TextEditor 的两个重载的工厂方法实现的。这两个方法的参数略有不同,可根据实际情况选择使用。

// Creates a new empty TextEditor with the given maximum size in characters, constraints and editor size as number of visible rows.
static TextEditor createTextEditor(int maxSize, int constraints, int width, int rows)

// Creates a new TextEditor object with the given initial contents, maximum size in characters, constraints and editor size in pixels.
static TextEditor createTextEditor(java.lang.String text, int maxSize, int constraints, int width, int height)

下面的代码演示了如何使用TextEditor:

TextEditor editor=TextEditor.createTextEditor("abc", 20, TextField.ANY, getWidth()-20, 100);
editor.setMultiline(true);
editor.setVisible(true);
editor.setFocus(true);
editor.setPosition(10, 10);
editor.setParent(this); // this point to a Canvas

【编辑推荐】

  1. Symbian s40 Java编程实战——开发环境配置
  2. S40 Touch API - Frame Animator API
  3. S40 Touch API - Gesture API (Chinese)
【责任编辑:Yeva TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

计算机病毒分析与防治简明教程

本书全面翔实地介绍了各种病毒的原理,以操作系统的发展为主线,结合病毒的发展过程来综合分析病毒。在分析工具上,较多地利用了脚本语言、...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊
× CTO训练营(深圳站)