![](/img/trans.png)
[英]Fragment move from one Fragment to another by sliding as well as button click
[英]how to move from one fragment to another fragment on button click
我正在使用 SherlockFragments 庫作為滑動菜單。當我點擊項目片段作為活動打開時,我有項目列表作為菜單,但它是一個片段。現在我是片段的新手。我不知道如何移動從一個片段到另一個片段。就像在活動中一樣,我們打算移動到另一個活動。但在片段中我不知道如何移動到另一個片段。我在 fragmentA 中有一個按鈕。當我點擊這個按鈕時,它會移動到片段 B. 通過谷歌搜索,我開始知道它有不同的周期,但無論如何,當我點擊這里的按鈕時,我得到了吐司味,下面是代碼
public class Fragment2 extends Fragment {
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.actionnetworklogin, container, false);
Button login = (Button)view.findViewById(R.id.login);
login.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(v.getContext().getApplicationContext(),"login clicked", 5000).show();
}
});
return view;
}
}
有人可以告訴我如何將一個片段移動到另一個片段嗎?
有沒有其他方法可以使用活動而不是片段?
我已經為所有活動和 java 文件編寫了代碼,但我不知道滑動菜單已經碎片化,現在我必須編寫所有代碼片段。
很簡單只有三行代碼...
Fragment fragment = new SalesFragment();
FragmentManager fragmentManager = getFragmentManager();
fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).commit();
這是我用來在視圖中切換片段的代碼:
FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace([viewId], fragment, tag);
fragmentTransaction.addToBackStack(tag);
fragmentTransaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
fragmentTransaction.commit();
你也可以試試這個:-
public void ButtonClick(View view) { Fragment mFragment = new YourNextFragment(); getSupportFragmentManager().beginTransaction() .replace(R.id.content_frame, mFragment ).commit(); }
FragmentManager fragmentManager = getFragmentManager();
fragmentManager
.beginTransaction()
.replace(R.id.frame_container,
new TeacherFragment()).commit();
//Below is the example
//In first Fragment
Fragment fragment = new YourFragmentClassName();
FragmentManager fragmentManager = getActivity().getSupportFragmentManager(); android.support.v4.app.FragmentTransaction ft= fragmentManager.beginTransaction();
ft.replace(R.id.flContent, fragment);
Bundle args = new Bundle();
// Pass the values what you want to send to next fragment
args.putInt("Year", rYear);
args.putString("Month", rMonth);
args.putInt("Industry", rIndustry);
fragment.setArguments(args);
ft.commit();
//In Second Fragment
//In onCreateView Method get the values
int strYear= getArguments().getInt("Year");
String strMonth = getArguments().getString("Month");
strIndustry= getArguments().getInt("Industry");
//That's it very simple
FragmentTransaction fragmenttransaction = getSupportFragmentManager().beginTransaction();
FirstFragment regcomplainfragment = new FirstFragment();
fragmenttransaction.replace(R.id.content_frame, regcomplainfragment).addToBackStack("tag");
fragmenttransaction.commit();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.