java-Android-将值从ListFragment传递到另一个ListFragment
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java-Android-将值从ListFragment传递到另一个ListFragment,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1738字,纯文字阅读大概需要3分钟。
内容图文
![java-Android-将值从ListFragment传递到另一个ListFragment](/upload/InfoBanner/zyjiaocheng/692/76bc43fa35574def894655ea575fcfef.jpg)
我有一个包含项目类别的列表视图.当我在列表上按类别标题时,它将显示另一个包含所选类别内项目的列表视图.
我正在通过使用ListFragment.我是否必须启动一个新活动并按意图一起传递类别ID?
这是我的类别的ListFragment:
public class CategoryFragment extends ListFragment implements
OnItemClickListener {
@Override
public void onActivityCreated(Bundle savedInstanceState) {
getListView().setOnItemClickListener(this);
}
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
// what to do here
}
}
我要在onItemClick中添加什么以转到“项目列表”?我需要使用另一个ListFragment还是仅使用常规ListActivity?
如何从解析的JSON检索类别ID并将其传递给列表项?
编辑:我使用Volley解析JSON.我正在考虑在布局中为类别ID创建一个不可见的TextView,以便可以从那里拉出它.那可能吗?
解决方法:
让您的FragmentActivity实现一个具有categorySelected(int categoryId)方法的接口.
在CategoryOverviewFragment内,当您选择一个类别时,您将其称为:
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
((CategorySelectedListener)getActivity()).categorySelected(i);
}
然后,在活动中实现categorySelected并将总览片段替换为CategoryFragment.
创建类别片段时,将类别ID设置为参数.最好使用newInstance pattern设置setArguments().
要将类别概述列表片段替换为类别详细信息片段,请使用FragmentManager至beginTransaction(),然后选择replace().
假设类别概述片段是动态添加的,而不是在XML中使用如下代码:
CategoryFragment newFragment = CategoryFragment.newInstance(categoryIdSelected);
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.fragment_container, newFragment);
transaction.addToBackStack(null);
transaction.commit();
如果类别列表片段以XML添加,则需要删除该类别并将其更改为FrameLayout,然后在代码中动态添加该片段.
内容总结
以上是互联网集市为您收集整理的java-Android-将值从ListFragment传递到另一个ListFragment全部内容,希望文章能够帮你解决java-Android-将值从ListFragment传递到另一个ListFragment所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。