我正在使用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文件的代码,但我不知道滑动菜单已经碎片化,现在我必须编写所有代码片段。
答案 0 :(得分:2)
这是我用来在视图中切换片段的代码:
FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace([viewId], fragment, tag);
fragmentTransaction.addToBackStack(tag);
fragmentTransaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
fragmentTransaction.commit();
答案 1 :(得分:2)
这很简单只有三行代码......
Fragment fragment = new SalesFragment();
FragmentManager fragmentManager = getFragmentManager();
fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).commit();
答案 2 :(得分:0)
您也可以尝试: -
public void ButtonClick(View view) { Fragment mFragment = new YourNextFragment(); getSupportFragmentManager().beginTransaction() .replace(R.id.content_frame, mFragment ).commit(); }
答案 3 :(得分:0)
FragmentManager fragmentManager = getFragmentManager();
fragmentManager
.beginTransaction()
.replace(R.id.frame_container,
new TeacherFragment()).commit();
答案 4 :(得分:0)
Below is the example
In frist 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
答案 5 :(得分:0)
FragmentTransaction fragmenttransaction = getSupportFragmentManager().beginTransaction();
FirstFragment regcomplainfragment = new FirstFragment();
fragmenttransaction.replace(R.id.content_frame, regcomplainfragment).addToBackStack("tag");
fragmenttransaction.commit();