0

BlackBerry dev で何かが私を夢中にさせています。私には習慣がありますEditField。コードは次のとおりです。

private EditField m_Txt=new EditField(EditField.FOCUSABLE |
                                        EditField.FILTER_DEFAULT) {
    protected void layout(int width, int height)
    {
        setExtent(Display.getWidth(), m_TxtHeight);
    }
    public boolean isFocusable()
    {
        return true;
    }

    protected void onFocus(int direction)
    {
        super.onFocus(direction);
        invalidate();
    }

    protected void onUnfocus() {
        super.onUnfocus();
        invalidate();
    }
};

問題は、焦点を合わせることができないということです。実際に呼び出しisFocusableなどはするのですが、カーソルが表示されず何も書き込めません。私はBlackBerry開発に慣れていないので、確かに何かが欠けていますが、何ですか?

どうもありがとう

4

2 に答える 2

1

私は実際に答えを見つけました。super.layout メソッドを呼び出すのをすっかり忘れていました。したがって、レイアウト方法は次のようになります。

protected void layout(int width, int height)
{
    super.layout(Display.getWidth(), m_TxtHeight);
    setExtent(Display.getWidth(), m_TxtHeight);
}
于 2011-04-29T09:23:17.387 に答える
1

どのOSでテストしていますか? それが最近の OS6 リリースである場合、それらのバージョンでは、選択モードを有効にするまでテキスト編集フィールドにカーソルが表示されないことがわかりました。

于 2011-04-28T17:38:13.577 に答える