我在数组列表中存储了一些值,现在我想将相同的数组列表对象传递给活动的片段。那么我怎么能从一个活动发送数组列表对象并接收片段中的同一个对象。如何将数组列表对象从android活动传递给fragment
-1
A
回答
0
在您的活动中试用此代码,它是来自我的工作应用程序的代码片段。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
yourArrayList.add("test");
yourArrayList.add("test2")
Bundle bundle = new Bundle();
bundle.putStringArrayList("arrayList", yourArrayList);
yourFragment yourFragment = new yourFragment();
yourFragment.setArguments(bundle);
fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.add(R.id.main_container, yourFragment);
fragmentTransaction.commit();
}
在你的片段,你可以这样
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
ArrayList<String> values = getArguments().getStringArrayList("arrayList");
}
0
您可以通过下面的片段,活动的通信通常的方式做到这一点访问值。那就是:
1)在你的Fragment类中声明一个公共接口。
2)在这个接口里面为你的列表声明一个getter方法。
3)让你的各个Activity实现这个接口。
4)内,您的片段,这样做:
@Override
public void onAttach(Context context) {
super.onAttach(context);
YourInterfaceType activity = (YourInterfaceType) context;
List<> yourList = activity.getMyList();
}
为了更清楚:
您的活动将是如下:
public class MyActivity extends Activity implements YourInterfaceType{
@Override
public void getMyList(){
return yourList;
}
}
0
通活动应遵循此行
Bundle bundle = new Bundle();
bundle.putStringArrayList("valuesArray", namesArray);
namesFragment myFragment = new namesFragment();
myFragment.setArguments(bundle);
fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.add(R.id.main_container, myFragment);
fragmentTransaction.commit();
中获取片段内遵循这一行
ArrayList<ObjectName> arraylist = extras.getParcelableArrayList("valuesArray");
0
只要把你的阵列setargument在Actiivty和片段得到阵列 getArgument。
活动
Bundle bundle = new Bundle();
bundle.putStringArrayList("valuesArray", namesArray);
namesFragment myFragment = new namesFragment();
myFragment.setArguments(bundle);
fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.add(R.id.main_container, myFragment);
fragmentTransaction.commit();
片段
ArrayList<Model> values = getArguments().getStringArrayList("valuesArray");
相关问题
- 1. 如何将对象传递给活动?
- 2. 如何将对象从子活动传递给主活动?
- 3. Android:如何将对象从非活动(视图)类传递给活动?
- 4. 如何将路径对象传递给新的活动(Android)
- 5. 如何将数组从一个活动传递给另一个活动android
- 6. 如何将对象数组传递给webAPI列表
- 7. 将自定义对象的数组列表传递给另一个活动
- 8. 如何将LocationRequest对象从活动传递给服务?
- 9. 如何将数组传递给子活动(android)?
- 10. Android:如何将对象从简单的类传递到活动
- 11. 将一个活动传递给另一个活动的对象(其中包含数组列表表达式)
- 12. 如何将Android的对象数组传递给React Native?
- 13. 将对象数组传递给函数
- 14. 如何将活动中的任何对象传递给服务?
- 15. 如何在Android中将Fragment中的整数值传递给FragmentActivity?
- 16. 将套接字对象传递给Android的另一个活动
- 17. Android将数组列表传回给父代活动
- 18. 传递一个字符串数组列表,从活动的Android
- 19. 如何将对象传递给WF4中的后代活动?
- 20. 如何将selectedListItem的对象传递给另一个活动?
- 21. 将数组值传递给对象类
- 22. 如何将对象传递给DLL或从中传回对象?
- 23. Android - 将数组传递给另一个活动
- 24. Android将活动中的数组传递给customadapter类
- 25. Android:返回上一个活动并将其传递给数组
- 26. 如果父Activity活动包始终有传递给Fragment的对象,则Fragment包的用途是什么?
- 27. 如何在Android上将对象从一项活动传递给另一项活动?
- 28. Android:如何将数据传递给子活动?
- 29. 将此传递给外部类,并从Android的alertdialog列表中启动活动
- 30. 将JSON对象从一个活动传递到另一个Android
你有没有试过这一点,并成功了吗? – Sanoop
是的,我获得成功 –
嗯ArrayList arraylist'肯定这条线。它会用于'T'对象吗? –
Sanoop