হোস্ট একটিভিটি findFragmentById()দিয়ে Fragment কে ক্যাপচার করার মাধ্যমে ফ্রাগমেন্টে মেসেজ পৌছে দিতে পারে, তারপর সরাসরি ফ্রাগমেন্টের পাবলিক মেথড কে কল করে।
উদাহরণস্বরূপ, চিন্তা করুন যে একটিভিটি যেটা উপরে দেখানো হয়েছে আরেকটি ফ্রাগমেন্টকে ধারন করতে পারে যা উপরোক্ত কলব্যাক মেথডের মধ্যে ফিরে আসা ডাটা দ্বারা নির্ধারিত আইটেমকে প্রদর্শন করতো। এক্ষেত্রে একটিভিটি কলব্যাক মেথডে রিসিভ করা তথ্য অন্য ফ্রাগমেন্টে পাস করে দিতে পারে যা আইটেমকে প্রদর্শিত করবে।
public static class MainActivity extends Activity
implements HeadlinesFragment.OnHeadlineSelectedListener{
...
public void onArticleSelected(int position) {
// The user selected the headline of an article from the HeadlinesFragment
// Do something here to display that article
ArticleFragment articleFrag = (ArticleFragment)
getSupportFragmentManager().findFragmentById(R.id.article_fragment);
if (articleFrag != null) {
// If article frag is available, we're in two-pane layout...
// Call a method in the ArticleFragment to update its content
articleFrag.updateArticleView(position);
} else {
// Otherwise, we're in the one-pane layout and must swap frags...
// Create fragment and give it an argument for the selected article
ArticleFragment newFragment = new ArticleFragment();
Bundle args = new Bundle();
args.putInt(ArticleFragment.ARG_POSITION, position);
newFragment.setArguments(args);
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
// Replace whatever is in the fragment_container view with this fragment,
// and add the transaction to the back stack so the user can navigate back
transaction.replace(R.id.fragment_container, newFragment);
transaction.addToBackStack(null);
// Commit the transaction
transaction.commit();
}
}
}