【问题标题】:Organizing tags with Interface Builder使用 Interface Builder 组织标签
【发布时间】:2012-09-04 01:53:59
【问题描述】:

我是 Interface Builder 的新手(我正在使用 RubyMotion,顺便说一句),并且想看看其他人如何组织他们的视图标签。我有很多真正应该组合在一起的视图组件,例如 UIView 之上的 UILabel。

我最初的想法是有一个函数来处理视图标签到视图对象的所有映射。像这样的:

def mapTags
  @awesomeButton = AwesomeButton.new(
    :view => view.viewWithTag 1,
    :label => view.viewWithTag 2
  )
end

def viewDidLoad
  self.mapTags
end

这仍然不是很令人满意,这就是为什么我希望更有经验/更聪明的人可以提供更好的解决方案。

【问题讨论】:

    标签: ios xcode interface-builder rubymotion


    【解决方案1】:

    好吧,如果您需要标记所有视图并且您有很多 em,我建议您在初始化视图时这样做,而不是将其分隔在一个函数中,这是最安全的方法。在objective-c中,我通常为每个标签创建特定的宏,然后每当我初始化视图时,我都会为该标签分配宏,例如:

    #define kMyFirstViewTag 2
    #define kMyLabelTag     3
    
    ...
    
    [myFirstView setTag:kMyFirstViewTag];
    

    这样您可以按名称(kMyGroup1LabelTag)对某些视图进行分组,并且可以通过标签名称轻松访问它们。

    我对 ruby​​ 了解不多,但我很确定应该有一种方法可以达到相同的结果。

    希望这个答案有帮助。

    【讨论】:

    • 感谢您的回答。这基本上就是我对 Ruby 所做的事情。我想我希望 Interface Builder 不将标签名称限制为整数——然后我可以在 IB 中命名我的元素。那么对于分组,没有办法在IB中表示两个元素属于一起吗?那部分必须完全用代码完成?
    • 在 IB 中没有“分组”之类的东西。我不确切知道您要做什么,但是如果您将UIViews 作为subviews 嵌入到父UIView 中,则它们以某种方式分组。当然,我不会仅仅为了“分组”他们而这样做。如果只是为了推荐和组织事情,那么我说你只有名字标签。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-13
    • 2017-06-20
    • 1970-01-01
    • 1970-01-01
    • 2012-05-08
    相关资源
    最近更新 更多