【问题标题】:Android: ActivityGroup -- How to "pop" a viewAndroid:ActivityGroup——如何“弹出”视图
【发布时间】:2012-05-08 00:27:22
【问题描述】:

我在我的 TabView 中实现了一个 ActivityGroup。

我可以从选项卡中的活动成功地将视图添加到 ActivityGroup。

如何将这个新视图从堆栈中弹出以返回到原始视图??

在 ActivityGroup 中,我使用 Finsih() 处理 BackButton,但整个应用程序消失并显示主屏幕。请注意,该应用并未被终止,它仍在运行。

(用 .NET 编写)

public override void OnBackPressed ()
    {
        int length = mIdList.Count;
        if (length > 1)
        {
            Activity current = LocalActivityManager.GetActivity (mIdList [length - 1]);
            current.Finish();
        }           
        base.OnBackPressed ();
    }

(我来自 iOS 背景)

【问题讨论】:

  • 如果您发布代码,则更有可能得到好的答案。但通常 View 父级有一些 .remove() 方法,可以在给定各种参数的情况下删除子级视图。
  • ActivityGroup 已弃用。你应该考虑使用Fragments
  • 当你说“从堆栈中弹出这个新视图以返回到原始视图”时,你的意思是 Activity 而不是 View 如果不是这个问题没有多大意义跨度>

标签: android tabactivity activitygroup


【解决方案1】:

首先,我同意 aneal 的观点,即您应该尝试 Fragments 而不是活动组。如果这样做,Android on-line training class 中的以下文本似乎可以解决该问题:

请记住,当您执行片段事务(例如替换或删除一个片段)时,允许用户向后导航并“撤消”更改通常是合适的。要允许用户在片段事务中向后导航,您必须在提交 FragmentTransaction 之前调用 addToBackStack()。

添加视图时,在提交“添加片段”事务之前调用 addToBackStack()。

【讨论】:

    猜你喜欢
    • 2011-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多