私はそれをかなり非正統的な方法で解決しました。おそらく誰にもお勧めしませんが、急いでいる人がそれを成し遂げるのに役立つかもしれないので、とにかくそれを書きます。これは悪いやり方だということを覚えておいてください。
私のアプリは基本的に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内を押すと、ポップアップ画面が閉じ、ボタンが押されるようにトリガーします。
私が言ったように、これはそれを行うのに悪い方法です(多くのものは静的である必要があります)が、迅速で汚れた解決策が必要な場合は機能します。