2012-09-04 98 views
0

按代碼我是相當新的界面生成器(我使用RubyMotion,順便說一句),並想看看別人是怎麼安排自己的看法標籤。我有很多視圖組件,它們應該組合在一起,就像UIView上的UILabel一樣。與Interface Builder中

我最初的想法是有一個單獨的函數,它查看標籤的所有映射的照顧,查看對象。事情是這樣的:

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

def viewDidLoad 
    self.mapTags 
end 

這仍然不是很滿意,這就是爲什麼我希望有人老練多了/高明能夠提供卓越的解決方案。

回答

2

好,如果你需要標記所有你的意見,你有很多的EM的,我建議你這樣做時,你初始化一個視圖,而不是它的功能分離的,這是最安全的方法。在Objective-C,我通常會創建特定的宏的每一個標籤,然後每當我初始化的觀點,我給你的那個標籤,前宏:

#define kMyFirstViewTag 2 
#define kMyLabelTag  3 

... 

[myFirstView setTag:kMyFirstViewTag]; 

這種方式可以按名稱某些視圖(kMyGroup1LabelTag)您可以通過標籤名稱輕鬆訪問它們。

我不知道很多關於紅寶石,但Im相當肯定應該有一種方法來達到同樣的效果。

希望這個答案是有幫助的。

+0

我很感謝答案。這基本上就是我用Ruby做的事情。我想我希望Interface Builder不會將標籤名稱限制爲整數 - 然後我可以在IB中命名我的元素。那麼對於分組而言,在IB中沒有辦法表達兩個元素屬於一個整體?這部分必須完全在代碼中完成? – user94154

+0

很好,在IB中沒有「分組」的東西。我不知道你想要做什麼,但是如果你有'UIView'作爲'subviews'嵌入到父'UIView'中,它們就被分組了。當然,我不會那麼做,只是爲了「分組」他們。如果只是爲了推薦和組織事情,那麼id就說你只有名字標記。 – KDaker