我想将一个字符串调用custID从一个fragement传递给anopther。但我不知道如何通过它。以下是我的代码:
class TabsAdapter extends FragmentPagerAdapter {
public TabsAdapter(FragmentManager fm) {
super(fm);
}
@Override
public int getCount() {
return 2;
}
@Override
public Fragment getItem(int i) {
switch(i) {
case 0: return MaterialUpConceptFakePage.newInstance();
case 1: return MaterialUpConceptFakePage.newInstance();
}
return null;
}
@Override
public CharSequence getPageTitle(int position) {
switch(position) {
case 0: return "Tab 1";
case 1: return "Tab 2";
}
return "";
}
}
有人可以帮我吗?
答案 0 :(得分:0)
intstring()
答案 1 :(得分:0)
你可以使用下面的包 -
$_SESSION['xxx']
然后在onCreateView()里面你可以收到如下 -
Fragment fragment = new Fragment();
Bundle bundle = new Bundle();
bundle.putInt(key, value);
fragment.setArguments(bundle);
getFragmentManager()
.beginTransaction()
.replace(R.id.body, fragment, null)
.commit();
答案 2 :(得分:0)
用户 minChunks: function(module, count) {
return module.resource && module.resource.indexOf('lodash') !== -1
}
将任何值从Bundle
传递到另一个Fragment
。这是您可以将字符串从一个Fragment
传递到另一个{/ p}。
设置值
SecondFragment secondFragment = new SecondFragment ();
Bundle args = new Bundle();
args.putString("MyKey", "MyValue");
secondFragment.setArguments(args);
加载第二个片段
getFragmentManager().beginTransaction().add(R.id.container, secondFragment).commit();
在第二个片段的onCreateView中:
//Retrieve the value
String value = getArguments().getString("MyKey");
答案 3 :(得分:0)
虽然像其他答案一样简单的Bundle可以工作,但我已经看到你使用newInstance了,所以我会向你展示一个例子,同时仍然使用newInstance来使代码在将来更容易维护。
在您希望String添加此代码的片段中
public static YourFragmentName newInstance(String str) {
YourFragmentName fragment = new YourFragmentName ();
Bundle args = new Bundle();
args.putSerializable("customer_id", str);
fragment.setArguments(args);
return fragment;
}
然后查看代码而不是
MaterialUpConceptFakePage.newInstance()
你应该
MaterialUpConceptFakePage.newInstance(customerid)
然后在你的onCreateView
里面String customer_id = (String) getArguments().get("customer_id");
答案 4 :(得分:0)
SharedPreference是在活动或片段之间传递数据的好方法。您可以发送任何数据int,boolean,string int等。
SharedPreferences preference;
//Initialize preference
preference = getActivity().getSharedPreferences("STATE",MODE_PRIVATE);
// it uses key-value pairs
// put string data to preference
preference.edit().putString("Your_String_Data", "anything").commit();
//use this to get that value in any fragment.
preference = getActivity().getSharedPreferences("STATE",
Context.MODE_PRIVATE);
String data = preference.getString("Your_String_Data",null);