SetContentViewを使用したAndroid ProgressDialog
-
08-10-2019 - |
質問
私はこれについて多くの地獄を読みました、そして、それをやったことや試したことがある人を見ることができません。
だから私はImageViewを拡張するオブジェクトを持っているので、この中で[進行状況]ダイアログを呼び出して、進行状況ダイアログのコンテンツをImageViewに設定します(つまり、ImageView..Viewで[進行状況]ダイアログを描画しようとします。)
loadingProgressDialog.setContentView(this); //this is: LoaderImageView extends ImageView
loadingProgressDialog.setIndeterminate(true);
loadingProgressDialog.show();
そして、私はエラーを取得します:コンテンツを追加する前に、requestfeature()を呼び出す必要があります
今、私はこのエラーをたくさんの投稿で見たことがありますが、はい、答えは明らかです。すべての機能を設定しようとしました。
loadingProgressDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
loadingProgressDialog.requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
loadingProgressDialog.getWindow().requestFeature(Window.FEATURE_PROGRESS);
loadingProgressDialog.getWindow().requestFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
しかし、最初にこれが必要な理由がわかりませんか?そして、2番目はとにかくそれらのどれも機能しません!
質問は、進行状況のコンテンツビューをImageViewに設定できますか?もしそうなら、私は何が間違っているのですか?
解決 3
とった。
手がかりはクラス名にありました、ProgressDialogを使用しないでください( http://developer.android.com/reference/android/app/progressdialog.html )ダイアログが必要ないとき!
使用する実装を変更しました:ProgressBar( http://developer.android.com/reference/android/widget/progressbar.html )そしてそれはうまく機能します。
とにかく耳を乾杯!
これが私がそれを探していた理由です:
http://www.anddev.org/novice-tutorials-f8/imageview-with-loading-spinner-t49439.html
画像が読み込まれている間にスピナーを持つ方法を示すチュートリアル。楽しみ
他のヒント
やった;実際、それは非常に簡単です。使用
loadingProgressDialog.setContentView(this)
後
loadingProgressDialog.show()
次のコード行は不要です。
loadingProgressDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
loadingProgressDialog.requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
loadingProgressDialog.getWindow().requestFeature(Window.FEATURE_PROGRESS);
loadingProgressDialog.getWindow().requestFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
それは言うことです:
loadingProgressDialog.setIndeterminate(true);
loadingProgressDialog.show();
loadingProgressDialog.setContentView(this); //this is: LoaderImageView extends ImageView
それは十分です。
これが、この質問についての答えを探している他の人に役立つことを願っています。
ProgressDialog Developer Docを読むと、「進行状況インジケーターとオプションのテキストメッセージまたはビューを示すダイアログ。テキストメッセージまたはビューのみを同時に使用できます。」と表示されます。
あなたは両方をやろうとしているようです。おそらくあなたの問題の原因。