問題タブ [android-context]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android:アラートを表示するための現在のコンテキストを決定する
Screen-Aからsを使用してZXingスキャナーを呼び出していますIntent
。スキャンが完了すると、もちろん、制御はScreen-Aの背後にあるコードに戻り、Screen-Bを呼び出す前に他の作業を行います。
問題は次のとおりです。この作業期間中は画面が黒くなり、「作業中...」トースト/メッセージボックスを表示するために使用する適切なコンテキストを判別できません。ヘルプや提案はありますか?
android - どこでもアプリケーションコンテキストを使用していますか?
Androidアプリでは、次のアプローチに何か問題がありますか。
そして、コンテキストが必要な場所(もちろんSQLiteOpenHelperなど)にそれを渡しますか?
android - Androidコンテキストを取得するためのさまざまな方法の違いは何ですか?
私が見たAndroidコードのさまざまな部分で:
しかし、どちらが好ましいのか、どのような状況でどのような状況で使用すべきかについての適切な説明は見つかりません。
これに関するドキュメントへのポインタ、および間違ったものが選択された場合に何が壊れるかについてのガイダンスをいただければ幸いです。
android - アラームで Android サービスが起動しない
アラームの BroadcastReceiver の onReceive を介してサービスを起動することに問題はありますか? 私のサービスでは、onCreate または onStart メソッドが呼び出されることはありません。
My Alarm のレシーバーはウェイクロックを取得し、context.startService(new Intent(context, FmiDaemon.class)); を呼び出します。(onRecieve パラメーターで指定されたコンテキスト)、3 秒間待機してから、ロックを解放します。
私のサービスには、onCreate と onStart の 2 つのメソッドがあります。onCreate は別のウェイクロックを取得し、onStart の最後でウェイクロックを解放し、「stopSelf」を呼び出します。どちらのメソッドもデータをログに送信することになっていますが、決して呼び出されないため送信することはありません。
問題はどこだ?それは使用するのに悪い「コンテキスト」ですか?onCreate と onStart は実装するメソッドが間違っていますか?
android - Androidにコンテキストメニューアイコンを追加する
ContextMenuを含むリストビューがありますが、ContextMenuのアイコンを設定すると機能しないように見えます
android - コンテキストなしで Android のシステム設定を取得する
Android ユーティリティ クラスで、クラスのシステム設定値を取得したいのですが、それを呼び出すクラスにもコンテキストがないため、そこにコンテキストがありません。Resources.getSystem()
リソースには静的関数を使用できることがわかりました。コンテキストなしでシステム設定を取得する同様の方法はありますか?
私のクラスはアクティビティでもサービスでもありません。ユーティリティクラスです。必要に応じてさらに情報を提供できます。
java - AsyncTask とコンテキスト
そこで、AsyncTask クラスで Android を使用して、初めてのマルチスレッド アプリケーションを作成しています。これを使用して 2 番目のスレッドで Geocoder を起動し、onPostExecute で UI を更新しようとしていますが、適切なコンテキストで問題が発生し続けています。
メイン スレッドで Contexts を使用するのに苦労しましたが、Context とは何か、またはバックグラウンド スレッドで使用する方法が正確にはわかりません。また、良い例も見つかりませんでした。何か助けはありますか?これが私がやろうとしていることの抜粋です:
Contextが不適切なため、6行目で失敗し続けます。
android - Androidで「コンテキスト」を取得する静的な方法は?
Context
静的メソッド内で現在のインスタンスを取得する方法はありますか?
「コンテキスト」インスタンスが変更されるたびに保存するのが嫌いなので、その方法を探しています。
android - AndroidAsyncTaskコンテキストの動作
私はAndroidでAsyncTasksを使用していて、問題に取り組んでいます。
簡単な例として、1つのAsyncTaskを持つアクティビティを取り上げます。バックグラウンドでのタスクは見事なことは何もしません。8秒間スリープするだけです。
onPostExecute()メソッドのAsyncTaskの最後で、ボタンの表示ステータスをView.VISIBLEに設定しているだけで、結果を確認するだけです。
これで、AsyncTaskの動作中に(8秒のスリープウィンドウ内で)ユーザーが電話の向きを変更することを決定するまで、これはうまく機能します。
Androidアクティビティのライフサイクルを理解しており、アクティビティが破棄されて再作成されることを知っています。
ここで問題が発生します。AsyncTaskはボタンを参照しており、最初にAsyncTaskを開始したコンテキストへの参照を保持しているようです。
この古いコンテキスト(ユーザーが向きを変更したため)がnullになり、AsyncTaskが表示しようとしているボタンへの参照用にNPEをスローすることを期待します。
代わりに、NPEはスローされず、AsyncTaskはボタン参照がnullではないと見なし、表示に設定します。結果?画面には何も起きていません!
更新:WeakReference
アクティビティを維持し、構成の変更が発生したときに切り替えることで、これに取り組んでいます。これは面倒です。
コードは次のとおりです。
それを実行してみて、AsyncTaskが機能している間に電話の向きを変更してください。
android - アイテム(特にチェックボックスアイテム)をクリックするとコンテキストメニューが閉じないようにします
コンテキスト メニューまたは通常のメニューにチェック可能な項目がある場合、その項目が選択されたときにメニューが閉じないようにするにはどうすればよいですか?