問題タブ [android-lifecycle]
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でDialogOnClickListnerを使用するにはどうすればよいですか?
私はAndroid開発に不慣れです。私の質問が非常に単純な場合は失礼します。
XMLを使用してAndroidレイアウトビューにボタンを作成しようとしました。今、Activityクラス内で、ボタンを取得し、クリックリストナーを追加しようとしています。これは問題なく正常に機能しています。
ボタンクリックの同様の行で、前に説明したダイアログがポップアップ表示されます。このダイアログには、ImageButtonがあります。この画像ボタンをクリックすると、以下のコードを使用してクリックリストナーを設定しようとしています。
@オーバーライド
上記では、この順序でログを取得します。1,3,4,5。私は2を取得しません。トーストでは、空白、空白の後にjava.lang.Nullexceptionのメッセージが表示されます。
しかし、これを実行すると、強制的に閉じるポップアップが表示されます。これを行う方法をアドバイスしてください。または、同じ回避策はありますか?ボタンをクリックするためのダイアログボックスが必要です。次に、ダイアログ内に複数のボタンオプションが必要です。ダイアログのボタンごとに、さまざまなアクティビティを実行する必要があります。どんな種類の助けやアドバイスもありがたいです。よろしくお願いします。
android - インテリジェンスでアプリケーションのバックグラウンドを検出
Activity
ホームキー(またはスタック内の最後のアクティビティのリターンキー)を押したときにどちらが実行されていたかに関係なく、指定された関数が呼び出されるように、Androidアプリがバックグラウンドになっていることを検出する方法を探しています。
onPause()
現在のアクティビティを置き換える新しいアクティビティとonStop()
バックグラウンド化されているアプリを区別できないため、これを確認するために追加する必要があるテストについてアドバイスを求めています。
android - アクティビティからホーミングすると、再起動時にダイアログ ボックスが表示されない
私はこの問題をいじっていますが、理解できないようです。私は、いくつかの通常のビューと GL サーフェス ビューを備えた単純なアプリを持っています。onCreateDialog() を使用していくつかのダイアログ ボックスを作成しましたが、すべて問題ないようです。
ただし、ホームを使用してアプリを終了してからアプリに戻ると、ダイアログは表示されなくなりますが、ダイアログが表示されているかのように画面が暗くなります。ダイアログが表示されない場合でも onPrepareDialog() への呼び出しを取得しています。ダイアログから show() を呼び出すなど、いくつかのことを試しました。その後、GL サーフェス ビューに切り替えて、ダイアログが再び機能するようにすると、少し奇妙になります。ViewAnimator を使用してビューを切り替えています。onPause() / onResume() に乗って、ライフサイクルを正しく処理していると確信しています
いつものように、助けてくれてありがとう。
android - 電話がアプリを中断すると、Androidアプリはどうなりますか?
私はアプリに取り組んでおり、私の活動の1つで進捗ダイアログを表示しています。回転時に正しく表示されるように管理しており、電話の場合も対応できると思いましたが、電話でテストするとダイアログが消えてしまいます。では、電話はアプリケーションに対して正確に何をし、アプリケーションのライフサイクルの一部はどのようになっているのでしょうか。
android - サービス呼び出しアプリケーション onCreate を開始しますか?
拡張された Application クラスを提供する場合、アクティビティがフォアグラウンドに移動されなくても、Service の作成時に onCreate が呼び出されますか?
android - サービスがシャットダウンされたときの操作の順序
AsyncTaskを使用していくつかのネットワーク操作を実行するサービスを作成しています。AsyncTaskのdoInBackgroundに非常に長い時間がかかっているとしましょう。その間、リソースが少なくなり、オペレーティングシステムがサービスをシャットダウンしています。
AsyncTaskはいつ強制終了されますか?onDestroyが呼び出されたときにAsyncTaskは引き続き実行されますか、それとも後で発生しますか、それともAsyncTaskをシャットダウンする責任がありますか?onDestroyのコードとdoInBackgroundのコードの間に競合状態がないことを確認しようとしています。
android - Android:ユーザーがホームを押したときに切断する方法はありますが、画面の回転ではありませんか?
受信場所の更新を公開するなど、いくつかの目的で接続を維持するアプリケーションに取り組んでいます。Androidのやり方と他の回答からのアドバイスに従って、画面の回転時にアプリケーションを破棄して再作成するデフォルトのAndroidの動作をオーバーライドしていません。その点ではうまく機能します。
onRetainNonConfigurationInstance メソッドで接続を保持します。問題は、ユーザーがホームを押したとき、アプリケーションが最小化されたとき、または何らかの理由でフォーカスを失ったときに接続を閉じたいのですが、画面が回転したときではないため、onPause、onStop、または OnDestroy なしではこれを行うことができません。構成の変更時に次々に呼び出されるため、いくつかのチェック。現時点では、isFinishing() を使用してアプリケーションが閉じられているかどうかを確認していますが、ユーザーが Home を押した場合は、isFinishing() == true (これは理にかなっています) は必要ありません。
私が考えた1つの解決策は、アプリケーションが接続の更新を処理するスレッドにフォーカスを持っているかどうかを確認し、フォーカスがない時間が経過した場合は単純に閉じることですが、これを行うためのより良い方法が必要だと思いますか?
お時間をいただきありがとうございます。
(投稿された回答を読んだ後、アクティビティのライフサイクルとonRetainNonConfigurationInstanceに関して物事を明確にするために編集されました)
android - アクティビティが作成される前に画面の向きを定義する方法は?
android:screenOrientation="portrait" によって、自分のアクティビティが縦向きモードのみになるように定義しました。
インテント経由でカメラ機能で写真を撮り、この写真を横向きモードで撮り、保存時に画面を縦向きモードにすると、再びアクティビティに戻ります。私が理解していないのは、短時間のアクティビティが横向きモードであり、破棄されて縦向きモードで再度構築されることです... onCreate と onRestore 関数には時間がかかるため、ユーザーの待機時間は 2 倍になります.. .
回避策か何か他のものはありますか?
android - 作成前に GUI 要素にアクセスしますか?
アクティビティのライフサイクルでは、onActivityResult メソッドが onCreate メソッドの前に呼び出され、すべてのボタンなどが初期化されます。しかし、どうすればそれらにアクセスできますか? いくつかの背景知識のための Thx!
android - 変数の状態を保存する以外に、onPause、onStop、onDestroy の良い方法は何ですか?
これで、最初のアプリケーションの設計段階に到達し、コードに戻ってライフ サイクル管理を実装するところまで来ました。変数の状態を保存する以外に、これらの各方法の良い方法は何ですか?
例: アニメーションをクリアしますか?
質問が漠然としていることは承知していますが、これらのメソッドを実装しているときに「やること」リストがどのように見えるか疑問に思っています。
ありがとう!