私は FragmentPagerAdapter を持つ FragmentActivity を持っています。これは、水平スワイプでスライドできる Fragment オブジェクトを多数保持しています。
Fragment オブジェクト内から FragmentActivity の要素 ("elementToBeChanged") にアクセスできるかどうか疑問に思っていましたか? Fragment クラスから FragmentActivity オブジェクトにある TextView 要素に文字列を渡したいと思います。
public class GalleryPagerActivity extends FragmentActivity implements OnClickListener {
private TextView elementToBeChanged;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.setContentView(R.layout.gallery_pager);
elementToBeChanged = (TextView) findViewById(R.id.tvTop);
elementToBeChanged.setOnClickListener(this);
}
}
どうすればいいですか?TextView 要素は Fragment オブジェクトが表示されるたびに (スワイプで) 更新する必要があります。
次のようになります。
public class GalleryFragment extends Fragment {
private FragmentActivity fa;
private LinearLayout ll;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
fa = super.getActivity();
ll = (LinearLayout) inflater.inflate(R.layout.gallery_fragment, container, false);
...
// ////////
// UPDATE THE "TextView elementToBeChanged" object in the parent FragmentActivity class HERE WHENEVER THIS FRAGMENTS BECOMES ACTIVE/VISIBLE...
// ////////
return ll;
}