私は、特定のコントロールが押されたときにボタンを強調表示し、非表示にする必要があるアンドロイドのビューを持っています。これは使い勝手の良い機能です。各ボタンがハイライト表示されているので、ユーザーに大声で読み上げられます。私はAlphaAnimationクラスを使ってハイライトを完成させます。しかし、今では無効化呼び出しまたはコールバックスレッドをいくつ入れたかによって、最後のアニメーションだけが実際にユーザーに提示されます。他のアニメーションはまだ呼び出されていますが、最後のアニメーションではオーバーライドされるため、1つしか表示されません。私はボタンの不透明度/アルファプロパティを設定することも試みましたが、これらの変更は一度に一括して実行されます。これらのアニメーションがシーケンスで発生する必要があります。コントロールフローが返される前にメインビューを更新するための良い方法はまだ見つかりませんでした(つまり、呼び出すメソッドが返される前に複数回更新する)。誰にもアイデアはありますか?複数のボタンアニメーションが順番に表示されます - 最後の1つだけが表示されます
1
A
答えて
2
この問題にぶつかる他の人にとって、私はついに解決策を見つけました。
ドキュメント: http://developer.android.com/reference/android/os/AsyncTask.html http://www.anddev.org/tut_updating_ui_from_a_thread-t11125.html
私のソリューション:ボタンの配列を取り込みAsyncTaskを作成します。そのdoInBackgroundメソッドでは、ハイライト/淡色表示し、ボタンのハイライト表示の各繰り返し中に、有効なボタンの更新をonProgressUpdateメソッドにプッシュします。 onProgressUpdateメソッドは、渡されたすべてのボタンに対してinvalidate()を呼び出します。ハイライト機能に簡単にアクセスできるように、AsyncTaskの新しいインスタンスを作成し、呼び出しを実行する静的ハイライト(buttons ...)メソッドを作成しました。
関連する問題
- 1. Android - 複数の表示が表示されない(最初の表示のみが表示されます)
- 2. ListActivityに1行だけが表示されます
- 3. 1つのdivが表示され、1つのdivが表示されない
- 4. 複数の通知が表示され、最初の通知のみが表示されます。
- 5. Androidソフトキーボードのショー番号が最初に表示されます
- 6. 3つのSELECTメニューのうち、1つだけが表示されます...何が欠けていますか?
- 7. Powerbuilderのタブページが表示されます(表示されます)?
- 8. ドロップダウンに表示される値の順番が変更されました
- 9. "each"イタレーションの最後に範囲が表示されます
- 10. jQuery uiダイアログには1回だけ表示されます
- 11. NSDateFormatterに完全な月名が表示されず、1桁の数字のみが表示されます
- 12. 最後のラベルのみが表示されます
- 13. Androidテーブルの最後のボタンが半分表示されます
- 14. 1つのサイトにPHPエラーが表示されます
- 15. ImageIcon、イメージの半分だけが表示されています
- 16. メインウィンドウが表示された後でダイアログを表示します
- 17. MonoTouch.Dialog - 最後の行が表示されていますか?
- 18. jquery:javascriptダイアログボックスは1回だけ表示されます
- 19. ロードされたコンテンツの最後に不思議な "1"が表示される
- 20. jquery - mouseleaveイベント後もタブが表示されますが、特定の方向にのみ表示されます
- 21. データテーブルで10個以上のレコードが表示されている場合はページ番号が表示されます。ページ番号は表示されません
- 22. 値がスクロールされた後にUITableViewに表示されます
- 23. iAdがシミュレータに表示されますが、デバイスに表示されません
- 24. 複数の行にドロップダウンオプションが表示されています:エラー
- 25. Xcodeストーリーボードビューコントローラーで複数のビューが表示されますが、そのうちの1つはストーリーボードエディターに表示されません
- 26. 現在、UIViewControllerが1つずつ表示されます。
- 27. FPDF WriteHTML()複数のテーブルが最初のものだけ正しく表示されます
- 28. linearGradientが1つの色で表示されます
- 29. 東のレイアウトに2つ以上のボタンを追加すると、1つだけが表示されます
- 30. Detailsビューは正しくバインドされますが、表示されるフィールドは1つだけです
あなたのコードはどこですか? – blessenm
ここでコードを投稿するにはあまりにも多くのアプローチを試みましたが、コードには問題はないようでした。私は最終的にそれを理解し、以下の解決策を掲載しました。 –