2013-01-07 62 views
1

基本上,標題說明了一切。我試圖做一些定製,我需要使用小於零的寬度來使按鈕彼此靠得更近。設置默認固定空間UIBarButtonItem寬度

我從this answer瞭解到。

我可以通過手動設置每個固定的空間寬度來做到這一點,但我怎麼能通過[外觀]或其他方式來做到這一點?

事情是這樣的:

// works for every button not only Fixed Space 
[UIBarButtonItem appearance] setWidth:-10]; 

!要麼 !!!

如何在XCode中設置小於零的寬度?無論如何,我使用Storyboard創建了一切,它說這不是一個有效的值。

任何幫助都會非常棒。

回答

2

我通常通過繼承容器和重寫layoutSubviewsdidLayoutSubviews來解決這類問題。這給你很多對各種造型行爲的控制。在這種特殊情況下,您將以編程方式確定寬度並相應地調整框架。

使您的實例類成爲此子類的子類,並且您將使佈局代碼與您的實現整齊分離。

+0

謝謝!我可以避免子類化嗎?對於我來說,僅僅在故事板GUI中使用一行代碼來劃分某些東西是不好的...... :) – dreamzor

+0

如果您不打算重複使用此代碼,那麼您可以在原始子類中重寫這些方法。 – Mundi

+0

嗯,問題是我實際上需要重複使用它們10次或更多次......不是在代碼中,而是在故事板中,在不同的屏幕上。 – dreamzor