ビューページャー用にいくつかのフラグメントを作成するフラグメント アクティビティがあります。私が作成している最初のフラグメントは、以前のアクティビティからのポートです。アクティビティの onCreate メソッドの前に、以前のユーザー入力に基づいてテキストビューを設定します。
ただし、これはフラグメントであるため、onCreateView の同じコードは setText() メソッドを無視し、UI 要素内のデフォルトの XML レイアウト テキストのみを表示します。
この問題を抱えている他の人を見たことがありますが、まだ解決されていません。アクティビティの onCreate で機能していた方法で、フラグメントのテキストビューにテキストを設定するにはどうすればよいですか?
ありがとう。
編集: 設定しようとしているテキストは、ホスト FragmentActivity (フラグメントを作成する) が作成されるときにインテントを介して取得されます。そう
Activity A + String str -->
creates FragmentActivity (gets str from intent). -->
Fragment 1, textView TV, TV.sestText(str);
コードを見る必要がある場合は、次の例から:
http://thepseudocoder.wordpress.com/2011/10/04/android-tabs-the-fragment-way/
http://thepseudocoder.wordpress.com/2011/10/05/android-page-swiping-using-viewpager/
Tab1Fragment 内で、XML ファイルにテキストビューを追加し、Tab1Frag の onCreateView メソッド内で setText を呼び出そうとしています。
思い返すと、こんな感じ…。
public RelativeLayout onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (container == null) {
return null;
}
View view = inflater.inflate(R.layout.frag1_layout, null);
title = (TextView) view.findViewById(R.id.frag1_title);
title.setText("Success!");
return (RelativeLayout)inflater.inflate(R.layout.frag1_layout, container, false);
}