[英]New fragment on button click from another fragment?
誰能指出我正確的方向並告訴我我做錯了什么?
我這里有一個帶有按鈕的片段。 當按下按鈕時,它需要替換當前片段並加載一個新片段。 我已經弄清楚了如何從Fragment到Activity,以及從Activity到Fragment,而不是從Fragment到Fragment。 我知道這個問題已經問過幾次了,但是我太新了,我自己都無法解決。
public class FragmentName extends Fragment {
public FragmentName() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View rootView = inflater.inflate(R.layout.fragment_name, container, false);
Button ID = (Button) rootView.findViewById(R.id.buttonID);
ID.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
FragmentName NAME = new FragmentName();
fragmentTransaction.replace(R.id.main_container, NAME);
fragmentTransaction.commit();
}
});
return rootView;
}
}
我認為您沒有初始化FragmentManager。 沒有FragmentManager,將無法替換,更新,創建任何片段。 因為它負責替換或刪除任何片段。 希望這會有所幫助。
public class FragmentName extends Fragment {
public FragmentName() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View rootView = inflater.inflate(R.layout.fragment_name, container, false);
Button ID = (Button) rootView.findViewById(R.id.buttonID);
ID.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
FragmentName NAME = new FragmentName();
fragmentTransaction.replace(R.id.main_container, NAME);
fragmentTransaction.commit();
}
});
return rootView;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.