【问题标题】:How to put an activity into a fragment?如何将活动放入片段中?
【发布时间】:2012-01-28 23:02:32
【问题描述】:

我有一个 3 页的 ViewPager。在每个页面中,我想插入一个列表视图,该列表视图填充在单独的类中。现在,我发现最简单的方法是膨胀布局,其中包含一个片段。假设我有 3 页。 在第 1 页中,我使用 fragment1 扩展布局,在第 2 页中,我使用 fragment2 扩展布局,在第 3 页中,我使用 fragment3 扩展布局。如何将活动分配为片段内容?我一直在互联网上搜索教程,但没有一个真正适合我的需求。或者有没有更好的方法来实现我的目标?

插图:

Activity 1 2 和 3 都是 ListView。膨胀自定义布局作为他们的项目布局。

【问题讨论】:

    标签: android listview android-activity android-fragments inflate


    【解决方案1】:

    如何将活动分配为片段内容?

    你没有。活动包含片段,而不是相反。

    或者有没有更好的方法来实现我的目标?

    为您的ViewPager 的每一页使用ListFragment。除此之外,您还没有解释您的目标是什么,因此很难进一步帮助您。

    【讨论】:

    • 查看更新,每个活动都是一个以自定义布局作为列表项的列表。
    • @borislemke:我的答案保持不变。不支持你想要的。从Activity 1中取出你的业务逻辑,放到Fragment 1上。然后,从Activity 2中取出你的业务逻辑,放到Fragment 2上。然后,从Activity 3中取出你的业务逻辑,放到Fragment 3上。删除Activity 1,Activity 2,以及您项目中的活动 3。
    • @borislemke:如果出于某种原因,您需要将活动 1-3 的逻辑作为单独的活动提供(例如,用于手机而不是平板电脑),那么请使用小存根分别仅包含片段 1、2 和 3 的活动。这样,您的 Activity 会保存 Fragment,但您不会尝试让 Fragment 保存 Activity。
    • 好的,所以,如果我在没有片段的情况下膨胀布局,而是直接添加列表视图,我该如何像在单独的活动中那样填充列表视图?我仍然可以将自定义布局作为他们的列表项布局吗?
    • @borislemke:引用ListFragment 文档:“ListFragment 具有由单个列表视图组成的默认布局。但是,如果您愿意,可以通过返回自己的视图层次结构来自定义片段布局来自 onCreateView(LayoutInflater, ViewGroup, Bundle)。为此,您的视图层次结构必须包含一个 ID 为“@android:id/list”的 ListView 对象(如果它在代码中,则为列表)”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-06
    相关资源
    最近更新 更多