0

私のアプリでは、さまざまなページをロードする BrowserField2 があり、単純な回転するプログレスバー/インジケーターを表示したいと考えています。パーセントなどを使わずに、できるだけシンプルに - 何かが起こっていることをユーザーに示すための小さなアニメーションです。

私は Android 開発の出身で、プログレスバーと呼ばれるものがありますが、Blackberry ではまったく別の名前で呼ばれているのでしょうか? (Blackberry のプログレスバーには、進行状況の計算が常に含まれているようです)。

何を探すべきですか?

4

1 に答える 1

1

私はそれをかなり非正統的な方法で解決しました。おそらく誰にもお勧めしませんが、急いでいる人がそれを成し遂げるのに役立つかもしれないので、とにかくそれを書きます。これは悪いやり方だということを覚えておいてください。

私のアプリは基本的に4つのボタンとブラウザフィールドで構成されています。

回転する「アニメーションの読み込み」を表示するには、browserfieldlistenerによってトリガーされるカスタムPopupScreenのalishaik786のヒント(彼のコメントを参照)を使用します。

// BrowserFieldListener to catch when a page started loading and when it is finished
                BrowserFieldListener listener = new BrowserFieldListener() {

                            public void documentCreated(BrowserField browserField, ScriptEngine scriptEngine, Document document) throws Exception{
                                displayLoadAnimation(); 
                               // see method below
                            }           

                            public void documentLoaded(BrowserField browserField, Document document) throws Exception{
                                try{
                                    popUp.close();
                                }catch(IllegalStateException es){
                                    es.printStackTrace();
                                }
                            }
                        };

            // The method for showing the popup
            private void displayLoadAnimation(){

                    popUp = new LoadingPopupScreen();

                    UiApplication.getUiApplication().invokeLater(new Runnable() {
                        public void run() {
                            UiApplication.getUiApplication().pushScreen(popUp);
                        }
                    });
                }

次に、カスタムPopupScreenで、タッチのevent.getGlobalY()とevent.getGlobalX()をチェックし、ボタンの位置と比較することで、ユーザーが「保護されたブール値touchEvent(TouchEventイベント)」をクリックしている場所をチェックします。ユーザーがボタンのX&Y内を押すと、ポップアップ画面が閉じ、ボタンが押されるようにトリガーします。

私が言ったように、これはそれを行うのに悪い方法です(多くのものは静的である必要があります)が、迅速で汚れた解決策が必要な場合は機能します。

于 2012-01-26T08:37:51.417 に答える