首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何访问UIView内部的UIView

如何访问UIView内部的UIView
EN

Stack Overflow用户
提问于 2012-01-20 06:14:21
回答 5查看 2.5K关注 0票数 1

我是iOS开发的新手,我想知道是否可以从UIView中访问UIView

我目前的设置是,我有一个带有UIView的主UIViewController。在这个UIView中,我有一个较小的UIView,我用它来显示调试信息。我想要做的是能够以某种方式访问该视图,以便在需要时可以看到/隐藏它,甚至可以在尝试调试逻辑错误时更改背景颜色。

我曾尝试使用self.view访问它,但这只给了我父视图。我在不同的网站和教程上看到,我需要将它添加到subView中并从那里开始工作,但当我这样做时,视图被设置为0x0。我还看到我需要使用IBOutlet,并且在IB中我需要在某个地方引用它,但是我不知道如何做,因为我看不到我在控制器的头文件中定义的对象,在IB中的任何地方。

任何建议都将不胜感激。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-01-20 06:20:43

如果您想通过IB访问您的第二个UIView:

  • 确保将其添加到界面生成器中的根视图
  • 使用@property (nonatomic, retain) IBOutlet UIView *myView在ViewController中创建插座(当然,合成它)
  • 将视图连接到界面生成器中的文件所有者中新创建的插座
  • Voila!现在应该可以工作了-只需使用self.myView (如果一切正确,它将具有非nil值)

访问您的视图

票数 4
EN

Stack Overflow用户

发布于 2012-01-20 06:20:22

最简单的方法是在视图控制器的.h文件中设置一个IBOutlet,然后将该嵌入式视图(或子视图)连接到该IBOutlet。

然后,您可以随时为其设置hidden属性的开关。

请查看描述如何使用Xcode4设计用户界面的this Apple documentation,特别注意“直接与源代码建立连接”部分。

票数 1
EN

Stack Overflow用户

发布于 2012-01-20 07:10:50

给定的答案是好的,这里是另一种方法:给视图一个标签(一个int,例如"1"),然后像这样访问它:

代码语言:javascript
复制
UIView * viewToGet = [theMainView viewWithTag:1]

您可以在IB中以及在代码中分配标签。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8934162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档