当前位置: 首页 > 知识库问答 >
问题:

ios快速容器视图和分段控制开关视图

尹昂雄
2023-03-14

我有分段控件和容器视图,现在我如何创建2个视图,分段控件需要在容器视图中切换这2个视图?

我找不到任何Swift或obj c的教程。

共有1个答案

单于海荣
2023-03-14

首先,进入容器视图的视图控制器,并通过接口生成器或代码确保您的两个视图是变量。假设你称它们为view1view2

在你的view didLoad()中写入(swft):

NSNotificationCenter.defaultCenter().addObserver(self, selector: "segmentedControlTapped:", name: "SCTapped", object: nil)

然后,创建一个新函数,如下所示:

func segmentedControlTapped(notif: NSNotification){
    let index = notif.userInfo["index"] as Int

    if index == 0{
        view1.hidden = false
        view2.hidden = true
    }
    else if index == 1{
        view1.hidden = true
        view2.hidden = false
    }
}

然后,在包含分段控件的视图控制器中,将iAction(如果使用IB)连接到控件的ValueChanged操作或使用代码。

IBAction函数应该是这样的:

@IBAction func tapped(sender: UISegmentedControl){
    NSNotificationCenter.defaultCenter().postNotificationName("SCTapped", object: nil, userInfo: ["index": sender.selectedSegmentIndex])
}

这应该做的是,当SC被点击时,它将调用被点击的函数,该函数告诉NSNotificationCenter发布一条消息。这应该被VC接收到,其中包含视图,并且应该被调用,它将切换您的视图。

 类似资料:
  • 本文向大家介绍iOS 访问容器视图控制器,包括了iOS 访问容器视图控制器的使用技巧和注意事项,需要的朋友参考一下 示例 当视图控制器出现在标签栏控制器中时,您可以像这样访问标签栏控制器: 迅速 目标C 当视图控制器是导航堆栈中的一部分时,您可以按以下方式访问导航控制器: 迅速 目标C            

  • 我在理解容器视图控制器的实现方式时遇到了一些麻烦。 我将一个容器拖到主视图控制器中,它会自动创建嵌入式视图控制器,并通过嵌入式segue连接。然后,我可以通过从主视图控制器访问它。 我有点困惑,在飞行中创建和使用这些。即我想用它作为警报视图。我是否只是初始化视图一次,然后在每次显示被触发时更改其内容?我应该调用或只是设置隐藏/动画视图进出? 发音有困难。希望有人会说新语,能理解我。

  • 在iOS6中,我注意到了新的容器视图,但不太确定如何从包含视图访问它的控制器。 脚本: 我想从包含容器视图的视图控制器访问Alert view controller中的标签。 他们之间有一段距离,我能用吗?

  • 本文向大家介绍iOS实现容器视图控制器的方法,包括了iOS实现容器视图控制器的方法的使用技巧和注意事项,需要的朋友参考一下 一直以来想写一个抽屉效果,看了一些文章后发现并不是那么简单,网上的一些抽屉效果不是很严谨。看了下MMDrawerController的源码,等于定制了一个Container View Controller。(类似于系统的UINavigationController以及UITa

  • 问题内容: 我一直试图将我的视图控制器弹出到我的视图堆栈中的以前的视图控制器之一。假设在我的视图堆栈中有 firstVC,secondVC,thirdVC和fourthVC 视图 控制器 。当前的视图控制器是第四个,在fourthVC中有一个表视图。如果用户删除tableview中的所有行,则应将用户 定向 到 secondVC 。我有一个想法,我将创建另一个Navigationcontrolle

  • 以下的一段代码相当于定义一个ParameterizableViewController视图控制器的快捷方式,该控制器会立即将一个请求转发(forwards)给一个视图。请确保仅在以下情景下才使用这个类:当控制器除了将视图渲染到响应中外不需要执行任何逻辑时。 以下是一个例子,展示了如何在MVC Java编程配置方式下将所有"/"请求直接转发给名字为"home"的视图: @Configuration