방법이야 많은데 알아서 선택해서 쓰세용.
1. Fragment를 멤버로 둔다.
class MainActivity extends Activity{
MyFragment mMyFragment;
public void func(){
mMyFragment.함수();
}
}
2. Fragment를 transaction에 포함할때 태그를 추가한다.
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction().replace(R.id.LinearLayout, new MyFragment(), "이거슨태그");
.
.
.
Fragment fragment = getSupportFragmentManager().findFragmentByTag("이거슨태그");
if(fragment instanceof MyFragment){
((MyFragment)fragment).함수();
}
3. FragmentManager로부터 transaction에 포함된 Fragment리스트를 사용한다.
FragmentManager fragmentManager = getSupportFragmentManager();
List<Fragment> fragmentList = fragmentManager.getFragments();
for(Fragment fragment : fragmentList){
if(fragment instanceof MyFragment){
//추가적으로 원하는 fragment를 특정하기 위한 조건을 걸수도 있음
((MyFragment)fragment).함수();
}
}