【问题标题】:What is the iPhone's equivalent of Android's findViewById(int)?iPhone 相当于 Android 的 findViewById(int) 是什么?
【发布时间】:2011-04-27 15:17:30
【问题描述】:

我来自 Android,刚刚开始学习 iOS 开发。如何从代码中引用在 Interface Builder 中创建的 UI 元素? 在 Android 中,这可以通过函数 findViewById() 来完成。

findViewById() 的 iOS SDK 等效项是什么?

【问题讨论】:

    标签: android ios iphone user-interface


    【解决方案1】:

    设置控件 tag 属性,然后使用它的标记检索控件 viewWithTag

    tag:一个整数,可用于标识应用程序中的视图对象。

    示例

    UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    button.tag = 1;
    [myView addSubview:button]; 
    

    稍后当您需要检索/访问UIButton 控件时:

    UIButton* btn = [myView viewWithTag:1];
    


    请记住,您还可以在控件属性中的 .xib(界面构建器)文件中设置 Tag 属性。

    请参阅 Apple 的 UIView 类参考 Tag Property

    【讨论】:

      【解决方案2】:

      来自 Jeff LeMarche 学院的 iPhone 开发新手,您还可以在类中创建成员变量,将它们装饰为 IBOutlet 并将界面构建器中的 UI 元素链接到变量。

      这是他在 Google 图书上的入门书籍的链接,第 52 页详细介绍了分步详细信息: http://books.google.com/books?id=TcP2bgESYfgC&lpg=PP1&dq=beginning%20iphone%203%20development&pg=PA52#v=onepage&q=connecting%20everything&f=false

      Xcode 4 让事情变得更加容易。只需打开您的 .xib 文件,然后在右上角的“编辑器”工具栏中,单击中间按钮“显示助手编辑器”。这应该会打开该 .xib 的相关标头 (.h) 文件,您可以简单地控制将 UI 元素拖动到 .h 文件中,它会为您生成 IBOutlet 代码。

      【讨论】:

        【解决方案3】:

        在iOS中你可以使用UIViewviewWithTag函数。

        - (UIView *)viewWithTag:(NSInteger)tag
        

        如下使用它

        UIView* myView12 = [SuperViewOf_myView12 viewWithTag:12]
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-12-05
          • 1970-01-01
          • 2017-08-21
          • 1970-01-01
          • 2020-12-12
          相关资源
          最近更新 更多