2016-04-12 12 views
1

Androidアプリケーションでは4つのセクションを持つ大きなフォームを実装する必要があるため、ViewPagerを使用して4つのフラグメントで01アクティビティを作成しました。各フラグメントにはいくつかのEditTextフィールドがあります。 4番目の部分では、フォームを完成させるためのボタンがあるので、それをクリックしてすべてのEditTextフィールドを取得したいと思います。Android Studioのアクティビティの親からのフラグメント要素にアクセス

MainActivity.javaでこれらのEditTextフィールドをすべて取得するのが最善の解決策だと思いますが、フラグメントからこれらの要素にアクセスしようとすると、このエラーのみが表示されます:仮想メソッド 'android.text .Editable android.widget.EditText.getText() 'nullのオブジェクト参照の場合

これらの要素やその他の優れたソリューションにアクセスする方法はありますか?

答えて

1

アクティビティで共有POJOを作成し、次回のプレスごとにFragmentクラスからそのPOJOを更新します。

あなたは、最終的なフラグメントは、ブール値を使用して仕上げを通知するとともに、活動によって実装されている各フラグメントのためのインタフェースを有することができるドキュメントで示唆したように活動がフラグメント http://developer.android.com/training/basics/fragments/communicating.html

と通信する方法で、ここでお読みください。

0

サーベイアプリケーションを作成するときにこのようなシナリオを1回実行しました。

  • 必要に応じてあなたのフラグメントを作成します。

    これは私が取ったアプローチがあります。

  • 期待どおり、最初のフラグメントをアクティビティに追加します。
  • ここで重要な部分 - ユーザーが次のページにNEXTまたはスワイプをクリックすると、マップに回答を追加します(各質問は回答にマップされます)
  • 最後の断片に到達するまでこのプロセスを繰り返し、あなたのマップから値(質問と回答)を出してください。

私はこれを実現するのが簡単で、期待される結果を得ました!

幸運と幸せなコーディング!

関連する問題