ios - 根据某些条件为一个选项卡显示不同的 Controller

标签 ios uiviewcontroller uitabbarcontroller

当用户点击收藏夹选项卡时,我需要显示:

  • 没有收藏怎么加收藏的介绍
  • 否则显示收藏列表

  • 所以当用户点击选项卡按钮时,我需要检查是否有任何收藏夹然后决定使用哪个 Controller ,我该怎么做?

    谢谢!

    最佳答案

    如果介绍是静态的,没有重要的用户交互,您可以将介绍放在包含收藏夹列表的 View 顶部的 subview 中。设置其帧大小以覆盖收藏夹列表。 (用户将使用下面的代码将其关闭。)将此称为 IntroductionView。将 IntroductionView 置于顶部的一种方法是在创建收藏夹 ListView 时最后添加该 subview 。

    在收藏夹列表的 View Controller 中,转到 viewWillAppear 并添加以下行:
    (如果已经有收藏夹,则假定用户已通过介绍。)

    if (*some test whether there are already favorites on the list*)
        introductionView.hidden = YES;
    else
        introductionView.hidden = NO;
    

    添加一些代码以在用户按下关闭按钮时运行
    - (void) dismissHit{
        introductionView.hidden = YES;
    }
    

    当点击收藏夹选项卡时,这将始终显示介绍 View ,除非列表中已经有一些收藏夹。阅读 UIView class referenceUIViewController class reference .查看列出的方法以更好地了解它在做什么。
    祝你好运。

    关于ios - 根据某些条件为一个选项卡显示不同的 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7605118/

    相关文章:

    ios - iPhone,iOS 8 : How to presentViewController smaller than original view controller?

    ios - 如何关闭当前 View Controller 后面的 View Controller ?

    swift - 从自定义单元格 Nib 推送到 viewController

    ios - 从 UITabBarController 选项卡 Root View 呈现 UINavigationController

    ios - 是 builder 模式吗?

    ios - iOS 设备旋转时的 View 和场景不正确

    ios - 在 UITableView 上添加和保存数据

    iphone - 添加标签栏 Controller 图标 iPhone

    Swift - 选定的标签栏索引不触发滚动到顶部

    ios - 不同时间重复通知