S40 Touch API - Text Editor API
作者:max.chen
TextEditor是一個可編輯的文本組件,它直接繪制在Canvas或CustomItem上。
TextEditor是一個可編輯的文本組件,它直接繪制在Canvas或CustomItem上。
有過游戲編程經(jīng)驗的工程師一定碰到過需要在游戲中輸入中文的情況。遇到這種情況,不是索性用輸入英文或拼音字母代替,就是將界面切換到使用控件的窗口,待輸入完中文后,再返回游戲頁面。TextEditor的實現(xiàn),徹底解決了這個問題。
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()
在創(chuàng)建TextEditor的實例的時候,不是使用常用的new()方法,而是通過TextEditor 的兩個重載的工廠方法實現(xiàn)的。這兩個方法的參數(shù)略有不同,可根據(jù)實際情況選擇使用。
// 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
責(zé)任編輯:Yeva
來源:
NOKIA Developer