В моей MainActivity class
У меня есть вид пейджера с 3 вкладки fragmentHome class
, fragmentHot class
и FragmentCategoryclass
метод вызова в фрагменте ребенка в родительском фрагменте от активности
Вот это fragmentCategory class
:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view;
view = inflater.inflate(R.layout.fragmentcategory, container, false);
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.category_fragment, new TabCategoryFragment());
transaction.commit();
return view;
}
В TabCategoryFragment class
, у меня есть категория сетки новости и когда сетка щелчка щелчка:
FragmentTransaction transaction = getFragmentManager().beginTransaction();
Bundle bundle = new Bundle();
bundle.putString("category", arrDataZone.get(position).getZone_name());
bundle.putString("zoneid", arrDataZone.get(position).getZone_id());
ListCategoryFragment myFrag = new ListCategoryFragment();
myFrag.setArguments(bundle);
transaction.replace(R.id.category_fragment, myFrag,"listFramgnet");
transaction.addToBackStack("grid_category");
transaction.commit();
Теперь я хочу, чтобы метод вызова в ListCategoryFragment
от MainActivity
или вызов метода в ListCategoryFragment
от FragmentCategory
.
Потому что я пытаюсь вызова метода в FragmentCategory
из MainACtivity
с:
linearPlayer.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
int number=viewPager.getCurrentItem();
Fragment fragment= adapter.getItem(number);
if (number==0) {
((FragmentHome)fragment).playAudioSerVice();
} else if(number==1) {
((FragmentHot)fragment).playAudioSerVice();
} else if(number==2) {
((FragmentNew)fragment).playAudioSerVice();
} else if(number==3) {
((FragmentCategory)fragment).playAudioSerVice();
}
}
});
и он побежал. Пожалуйста, дайте мне свою идею или код, чтобы сделать это.
Какой метод хотите позвонить деятельности? –
@ ρяσѕρєяK нет, я хочу вызвать метод playAudioService() в ListCategoryFramgnet.class из MainActivty.class или из FragmentCategory.class –
Затем назовите его как '((MainActivty) getActivity()) .. playAudioSerVice();' есть ли проблема при этом? –