2

基本的に、私のアクティビティには 2 つのバイがあり、1 つはアニメーションするサーフェス ビューで、もう 1 つはアニメーションを持つボタンです。

もともと私はサーフェスビューで非同期タスクを作成し、「onprogressupdate」メソッドで「描画」しました。私の理解では、これが意図された方法です。

ただし、ボタンを押すたびに、ボタンのアニメーションがサーフェスビューのアニメーションを停止しているかのように、サーフェスビューが停止します。これは論理的に思えます。

これを克服するために、「描画」を「バックグラウンドで実行」に戻します。これは明らかに間違っていると感じています。お互いをブロックせずに 2 つのアニメーションを実行する方法はありますか?

4

1 に答える 1

1

UI スレッドの外部から Android UI ツールキットにアクセスしないでください。ViewUI スレッドの外部から直接操作したい場合は、View.post(Runnable)代わりに を使用する必要があります。例えば、

public void onClick(View v) {
    new Thread(new Runnable() {
        public void run() {
            mButton.post(new Runnable() {
                public void run() {
                    // do something here
                }
            });
        }
    }).start();
}
于 2012-07-10T14:49:30.660 に答える