問題タブ [android-savedstate]

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 に答える
166 参照

android - カスタム設定 isPersistent()

Androidの簡単なガイドといくつかのグーグルを使用して、独自の番号ピッカー設定を作成しました。私の質問は onSaveInstanceState() メソッドに関するものです。Google のチュートリアルでは、 isPersistent() メソッドを使用して設定が永続的かどうかを判断し、永続的である場合は単にスーパーステートを返すことをお勧めします。この条件では、番号ピッカーを新しい番号にスワイプしてから画面を回転させると、回転したバージョンが永続化された値に戻るため、私はそうしませんでした。この条件を削除すれば、すべて問題ありません。しかし、edittextpreferenceのような他の設定のソースコードを確認すると、この条件が存在し、値を保存されていない値に変更してから画面を回転させても状態が保存されます..誰かがそれを説明してもらえますか? これが私のコードです:

ありがとう:)

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

android - Parceler を使用して Android アクティビティまたはフラグメントの状態を保存する

パーセラーライブラリを使用しています。これで複雑なオブジェクトを作成しました。それはオブジェクトを分割可能にするということなので、フラグメント状態の保存に使用したいと思います。

これが私のモデルです

そして、私のフラグメントにはこれがあります

でも入れようとするとonSaveInstanceState

そして、onCreate Likeで値を取得したい

このライブラリでこれを達成するにはどうすればよいですか?

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

android - 向きが変わったときに StreetViewFragment の状態を保存する

StreetViewPanorama の現在の位置を StreetViewFragment に保存しようとしています。たとえば、ユーザーがもともと縦向きで、矢印をタップして StreetViewPanorama の場所を変更し、領域を探索してから横向きに切り替えた場合、ユーザーがエリアの探索を続行できるように、復元する最後の場所。現在、「streetViewPanorama.getLocation()」にアクセスしようとすると、streetViewPanorama は Null になりますが、これは問題ではありません。状態を保存する私の方法は正しくなく、より良い方法があるはずだと思います。だから私はあなたの提案を求めています、お願いします!

これは私のStreetViewFragmentのコードです:

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

android - 別のアクティビティからのフラグメント レクリエーション

A と B の 2 つのアクティビティがあります。アクティビティ A には、トランザクションを介して動的に追加された 1 つのフラグメント F があります。F から、アクティビティ B を開始します (F.getActivity.startActivity(intent))。戻るボタンを押すと、F が再作成されます。それを避けることはできますか?

そうでない場合、フラグメントの状態を保存できることは理解していますが、savedInstanceState バンドルは常に null です。XML で ID を設定する必要があることがわかりましたが、フラグメントは動的に作成されるため、設定方法がわかりません。

ありがとう。

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

android - 画面回転でレイアウトを変更しながらフィールドデータを保存する方法

データの保存インスタンスと復元について多くのことを読みましたが、私の場合は実装できません。アプリケーションでの私のケースは何ですか。

  1. 私はアクティビティ(MainActivity)を使用しており、その中でフラグメントを呼び出しています
  2. ParentFragment はその中で ChildFragment を呼び出しますが、ParentFragment には TextViews などの独自のビューがあり、First name、Last name、および age を取得し、この部分の下でプログラムで ChildFragment を呼び出しています

このようにして、MainActivity に 2 つのフラグメントがあり、画面上で一度にユーザーに表示されます。

**欲しいもの**

  1. ユーザーが方向を変更したときにレイアウトも変更する必要がありますが、テキストフィールドがそこにデータを保持する必要もあります。
  2. 画面の向きが変更された後に新しいレイアウトが設定された後に、いくつかのフラグメント変数とそのデータを構成の変更時にも保存し、それらを取得したいと考えています。

**問題と混乱**

  1. Fragment.setRetainInstance(true) を設定した場合、フラグメントは引き続き onConfiguration Change コールバックを受け取ることができますか?

  2. デバイスを回転すると、フラグメントが再初期化され、アクティビティに Asynctask があり、それが再び実行されます。アクティビティに同じデータを保持させたいです。どうすればそれを達成できますか?

私を助けて、ヒントを教えてください。

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

android - 後で使用するための RecyclerView/メモの保存

アプリを再設計しようとしていますが、最善の方法がわかりません。

現在、ヘッダー/親アイテムとしていくつかのワークアウトを含む展開可能なリスト ビューがあります。各ワークアウトには、4 週間を表す 4 つの子項目があります。ユーザーが 1 週間クリックすると、3 つのタブ フラグメント (月曜、水曜、金曜を表す) を持つ新しいアクティビティに送信されます。これらのフラグメントにはそれぞれリサイクラー ビューがあり、クリックされたアイテム (カスタム オブジェクト) に応じてデータが入力されます。以下に小さな例を示します。

それはほんの一例です。これでもいいのですが、もっと使いやすくしたいです。私のアイデアは、ユーザーにワークアウトを選択してもらい、各ワークアウトをイベントとして Caldroid カレンダーに追加してもらい、そのワークアウト (たとえば、月曜日) をクリックすると、以前にリサイクラー ビューで使用していたのと同じビューが使用されるようにすることです。これまでのところ、私はこれらすべてを行う方法を知っていると信じています.

私の質問は、保存機能を実装したいということです。そのため、ユーザーがワークアウトを完了すると、Caldroid の対応する日に保存され、その日の背景色が変更されるため、ユーザーはワークアウトが完了したことがわかります。ワークアウトを保存してユーザーがその日に戻ってチェックアウトできるようにする方法がわかりません彼らはクリックします。また、メモを取るオプションを追加したいと思います。これにより、さらに複雑になります..

基本的には、ユーザーが実行したワークアウトを保存すると、そのアクティビティのすべての部分、リサイクラー ビュー アイテム (チェックマークの状態を含む)、およびそのワークアウトで取ったメモが保存されるようにしたいと考えています。

私はsqliteを使用することを考えましたが、カスタムオブジェクトを含むArrayList / recyclerviewの状態をsqliteに保存し、アイテムが保存されてユーザーが特定の日付をクリックした後にそれを参照する方法が正確にわかりません

誰かが少しでも助けてくれたり、正しい方向に私を向けることができれば、それは大歓迎です! どこから始めればいいのかわからない!どうもありがとう!