問題タブ [android-configchanges]

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.

0 投票する
1 に答える
1145 参照

android - ダイナミックスピナーで向きの変化を処理する

Webを検索して、5時間試し続けましたが、問題を解決する方法が見つかりませんでした。向きを変えた後もスピナーの状態を保ちたい。

動的に作成されるスピナーが2つあります。彼らはhttpリクエストによってアイテムを取得し、最初のスピナーはsetOnItemSelectedListener()メソッドによって2番目のアイテムを変更します。文字列をグローバルリストに読み込みました。

私の最初の問題は、アクティビティの再開を妨げることでした。

マニフェストファイルでこの変更を行って、向きの変更を自分で処理し、再起動によるアクティビティを回避しました。

インターネットで向きの変更を処理する方法を見つけましたが、うまくいきませんでした。向きを変更すると、nullポインタ例外が発生します。

これは私がこれまでに行ったことです。私はそれをやろうとしている方法についてさえ確信がありません。したがって、これを行うためのより適切な方法があれば幸いです。

0 投票する
1 に答える
160 参照

android - アクティビティとスレッドの関係を処理するための一般的な方法は何ですか

私は次のような状況にあります

  1. から長時間実行されるユーザースレッド(Thread)を生成しますActivity
  2. ソフトバックボタンを押します。だから、Activity破壊されました。
  3. もう一度同じように起動Activityします。Thread以前に起動されたものはまだ実行されていることに注意してください。

前のものがまだ実行されている間にActivity別の同じものを起動するのを防ぐために、これが私がしていることですThreadThread

  • を起動した後Thread、静的変数に格納します。したがって、次に同じスレッドを起動しようとするときに、静的変数を介して前のスレッドの活性をチェックします。これは良い習慣ですか?これを克服するためのベストプラクティスは何ですか?

ユーザースレッドは、Activityそれを起動したものへの参照を保持していることに注意してください。ただし、Activityユーザーがソフト戻るボタンを押すと、が破壊される可能性があります。したがって、新しいアクティビティを再度起動すると、threadはそのことに気づかず、まだ古いものを参照していActivityます。したがって、ユーザースレッドが古いメンバーにアクセスしようとすると、既に破棄さActivityれているためにクラッシュが発生します。これを克服するためのベストプラクティスは何ですか?Activity

0 投票する
1 に答える
140 参照

android - GLSurfaceViewアプリがAndroidデバイスのロケールを読み取る必要がない場合、ロケール構成の変更を安全に無視できますか?

デフォルトでは、アプリの実行中にユーザーがデバイスの表示言語を変更すると、Androidはアクティビティを破棄してから再作成します。これは、アプリが最新の設定を正しく使用していることを確認するために行われます。

マニフェストlocaleの属性に追加することで、この動作をオーバーライドできます。configChangesその後、ユーザーが言語を変更するとonConfigChanged()、完全に再起動するのではなく、へのコールバックのみを受け取ります。ただし、ドキュメントには、「すべてのリソースを再度取得する」必要があると記載されています。

これらの構成変更はすべて、アプリケーションに表示されるリソース値に影響を与える可能性があります。したがって、onConfigurationChanged()が呼び出された場合、変更を正しく処理するには、通常、すべてのリソース(ビューのレイアウト、ドローアブルなどを含む)を再度取得する必要があります。

私の質問は、これはロケールの変更に本当に当てはまりますか?ユーザーの言語設定をまったく使用せず、GLSurfaceViewを使用してグラフィックのみをレンダリングする架空のアプリがある場合、このイベントを無視しても安全ですか?もしそうなら、あなたはそれをドキュメントでバックアップできますか?

イベントを無視することは正しく機能しているようで、ロケールを使用していないときにビューを再作成することはあまり意味がありませんが、微妙なバグを導入していないことを確認したいと思います。

どんな情報でも大歓迎です。

0 投票する
1 に答える
1697 参照

android - 非 UI フラグメントとシングルトン

非 UI フラグメントの主な目的は、構成の変更後も保持されるデータの保存だと思いますよね? したがって、このフラグメントを所有するアクティビティに固有のこのストレージであることは別として、これはアプリケーション全体でシングルトン パターンを使用する利点です (これは私がこれまで行ってきたソリューションです)。

0 投票する
1 に答える
219 参照

android - Android グリッドビューの向き

こんにちは、カスタム レイアウトを持つ gridview があります。カスタム レイアウトは、2 つのボタンを持つフレーム レイアウトであり、1 つのボタンは、ユーザーが他のボタンをクリックしたときにのみ表示されます。明確にするために、誰かが理解していない場合はお知らせください)...今私の問題は...アクティビティの状態を保存する方法です。タブレットの向きを変えても、横向きモードや縦向きモードで行ったのと同じ数のボタンをユーザーに打ち負かしてもらいたいです。

最後に、ユーザーが方向を変更したときにアクティビティが同じ状態のままであることを確認するにはどうすればよいですか...

0 投票する
3 に答える
1820 参照

android - Android WebViewでビデオの再生状態を復元する方法

私のアクティビティでは、次のように you-tube ビデオ コンテンツを Web ビューにロードしています。

you tube ビデオを読み込んでいます。再生ボタンをクリックすると、ビデオが再生されます。これはすべて正常に機能しています。

画面を回転させたとき Web ビューでビデオの状態を復元するにはどうすればよいですか? 回転する前にビデオが 30 秒間再生されているかどうかを意味します。ローテーション後31秒からスタート。申請中

onSave および onRestore ライフサイクルメソッドでは機能しません。

0 投票する
1 に答える
557 参照

android - ロケールの更新は、再び必要となるlayout-landxmlに向けられていないOnConfigurationChangeをオーバーライドする必要があります

私はアプリの言語にロケールを使用していますが、向きを変更するときに再構成する必要があります。

しかし、私のコードでは、Xmlをリセットするためにアクティビティを破棄して再作成する必要があるレイアウトランドにアクティビティを送信する必要があります。

OnConfigurationChange(Configuraion config)アクティビティを破壊せずにレイアウトをオーバーライドしてレイアウトランドに転送する方法を教えてもらえますか?

これは可能ですか?

0 投票する
1 に答える
704 参照

android - Android - スマートフォンのみで向きを強制する

私のアプリには 3 つの画面があり、スマートフォンでは縦向きのみ、タブレットでは両方の向きにする必要があります。

Unitl で次のコードを使用していましたOnCreate

ただし、スマートフォンを横向きモードで保持してアプリケーションを起動すると、数秒間横向きで表示された後、縦向きに回転します。

ここでの多くの回答は、マニフェストを介して向きをロックすることを提案していますが、それはタブレットの向きをロックするため、望ましくありません。

解決策につながる情報があれば、非常に感謝しています。ありがとう。

0 投票する
2 に答える
1547 参照

android - Android 4.2 で実行すると、画面がちらつきます。(アクティビティは継続的に再開されます)

一部のユーザーから、Android 4.2 で実行しているときにアプリの画面がちらつくことがあるとの報告がありました (のみ!)。

自分のデバイスで試してみたところ、ログを入れた後、アクティビティが再開され、1 秒に 3 回ほど再起動されました。

だから私がしたことは、継続的に再起動するときにメソッド呼び出しを追跡することでした。結果は次のとおりです。

メソッドのトレース出力

これは Android 4.2 (17) の新機能であるため、問題は ViewGroup.resetRtlProperties() にあるようです。

これがバグかどうかはまだ確認できませんが、これを経験した人や回避策がある人はいますか?

0 投票する
1 に答える
1189 参照

android-annotations - androidアノテーションの設定変更の扱い方(画面の回転)

私は Android アノテーションを使用しています。進行状況ダイアログがありますが、画面を回転させているとき (ランドからポート) です。進行状況ダイアログが閉じ、これらのエラーが log cat に表示されます。

アクティビティ com.example.progressdialog.AnnotationProgressDialogActivity_ は、最初にここに追加されたウィンドウ com.android.internal.policy.impl.PhoneWindow$DecorView@40661c20 を漏らしました

android.view.WindowLeaked: アクティビティ com.example.progressdialog.AnnotationProgressDialogActivity_ は、最初にここに追加されたウィンドウ com.android.internal.policy.impl.PhoneWindow$DecorView@40661c20 をリークしました

ここに私のコードがあります:-