0

PopupScreenのBasicEditFieldにファイル名を入力するようにユーザーに求める機能を持つアプリを書いています。このアプリは、Blackberry Storm 2(シミュレーターと実際のデバイスの両方)で正常に動作します。

問題は、アプリがBlackBerry Torchで動作しないことです。つまり、シミュレーターでもデバイスでもありません。BasicEditFieldにテキストを入力できません。

BlackBerry TorchのキーボードがBasicEditFieldで機能しないのはなぜですか?BasicEditFieldの代わりにEditFieldも試しましたが、どちらも機能しません。

private BasicEditField txtFileName = 
    new BasicEditField("Name: ", "", 50, EditField.EDITABLE | EditField.FILTER_FILENAME);
...
Constructor()  
{  
    add(txtFileName);  
}
4

2 に答える 2

1

OK、私が犯した間違いは、 keyCharメソッドに間違った戻り値を入れることでした。
私はreturntrueを置き
ます。
メソッドの最後で、super.keyChar(key、status、time);を返す
必要があります。以下は、 keyCharメソッド の正しい実装です。

public boolean keyChar(char key, int status, int time)
{
    ..................
    /*
    return true; // user cannot type in the BasicField on Torch, but can type on Storm
    */
    return super.keyChar(key,status,time);// works on both Torch and Storm
}
于 2010-10-29T03:03:02.183 に答える
0

これはあなたの問題に対する答えではありませんが、役立つかもしれないコードスニペットがあります。次のコードを使用して、上記の説明を再現してみました。問題なく動作しました:

private static class AppScreen extends PopupScreen
{
     AppScreen() {
         super(new VerticalFieldManager(), Field.FOCUSABLE);

         BasicEditField txtFileName = new BasicEditField("Name: ", "", 50, 
                 EditField.EDITABLE | EditField.FILTER_FILENAME);
         add(txtFileName);
    }
}

申し訳ありませんが、問題に対する直接的な回答はありませんが、上記のコードがアプリの問題の追跡に役立つことを願っています。

于 2010-10-28T17:52:02.613 に答える