I have MainActivty
class with DrawerLayout
, so I add Fragments
dynamically.
public void selectDrawerItem(MenuItem menuItem) {
Fragment fragment = null;
Class fragmentClass;
switch(menuItem.getItemId()) {
case R.id.nav_websites:
fragmentClass = ScreenOne.class;
break;
case R.id.nav_commands:
fragmentClass = ScreenTwo.class;
break;
case R.id.nav_help:
fragmentClass = ScreenThree.class;
break;
default:
fragmentClass = ScreenOne.class;
}
try {
fragment = (Fragment) fragmentClass.newInstance();
} catch (Exception e) {
e.printStackTrace();
}
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction().replace(R.id.flContent, fragment).commit();
setTitle(menuItem.getTitle());
mDrawerLayout.closeDrawers();
}
In first fragment
public class ScreenOne extends Fragment implements Button.OnClickListener
I have a function
public void loadText() {
SharedPreferences myPrefs;
myPrefs = getActivity().getSharedPreferences("myPrefs", MODE_WORLD_READABLE);
siteName1.setText(myPrefs.getString("siteName1_txt", "").toString());
siteURL1.setText(myPrefs.getString("siteURL1_txt", "").toString());
}
In my mainActivity class, in onCreate method, I want to call loadText() method, I tried
ScreenOne fragment = new ScreenOne();
fragment.loadText();
But that didn't work. I can't find fragment by ID or Tag, because they don't havy any. Please, any help or advice woild by much appreciated.