我們有一個控制器,可能會從幾個地方推,所以它的後退按鈕可能有幾個標題之一。它還有一個彈出另一個控制器的按鈕。他們都有相同的自定義標題元素,但他們居中不同,因爲第二個控制器沒有後退按鈕。我想添加一個間隔器來解決這個問題,但我不知道要製作它的寬度。如何獲取UINavigationBar中後退按鈕的寬度?如何獲取UINavigationBar中後退按鈕的寬度?
1
A
回答
5
你總是可以通過導航欄的子視圖spelunk,尋找後退按鈕查看和摘大小,當你找到它。我做了一個博客張貼了一段時間後通過一個UIView的子視圖迭代,這裏是網址:
http://www.dosomethinghere.com/2011/07/09/logging-the-view-hierarchy/
我使用上面的網址在我目前的應用程序描述的InspectView類,當我插入此代碼到一個視圖控制器,其具有在所述導航欄後退按鈕:
- (void)viewDidAppear:(BOOL)animated
{
[InspectView dumpViewToLog:self.navigationController.navigationBar findParent:NO];
}
這是在控制檯得到的輸出:
2011-09-20 09:11:19.599 MyApp[2070:207]
Inspect view hierarchy -----------------------------------
UINavigationBar (0x6626460): frame origin: (0, 20) size: (320, 44) [tag=0] UIView : UIResponder : NSObject :
. UILabel (0x6613f00): frame origin: (62, 0) size: (200, 44) [tag=0] UIView : UIResponder : NSObject :
. . UILabel (0x6628520): frame origin: (0, 19) size: (200, 20) [tag=0] UIView : UIResponder : NSObject :
. . UILabel (0x665eda0): frame origin: (0, -1) size: (200, 24) [tag=0] UIView : UIResponder : NSObject :
. UINavigationItemButtonView (0x662a5b0): frame origin: (5, 7) size: (49, 30) [tag=0] UINavigationItemView : UIView : UIResponder : NSObject :
End of view hierarchy -----------------------------------
UINavigationItemButtonView是後退按鈕,您可以看到大小爲49寬30高。你會在你的應用程序中尋找這個視圖類,並記住它的大小。
請注意,將此代碼放入viewDidLoad或viewWillAppear將顯示不同的結果。
-1
嘗試這種方式
NSLog(@"frame =%f",self.navigationController.navigationItem.rightBarButtonItem.width);
相關問題
- 1. UiNavigationBar後退按鈕
- 2. NavigationController UINavigationBar的後退按鈕
- 3. UINavigationBar後退按鈕消失
- 4. UINavigationBar後退按鈕蒙皮
- 5. UINavigationBar,後退按鈕和dismissModalViewController
- 6. 獲取的後退按鈕
- 7. 如何在NGUI中獲取相機寬度和按鈕寬度
- 8. UINavigationBar的後退按鈕不會出現
- 9. UINavigationBar得到白色的後退按鈕
- 10. 如何以編程方式調用UINavigationBar中的後退按鈕?
- 11. UINavigationBar後退按鈕與圖案圖像
- 12. 刪除UINavigationBar後退按鈕標題
- 13. 在UINavigationBar上縮進後退按鈕?
- 14. 更改UINavigationBar後退按鈕標題
- 15. 如何抓住UINavigationBar後退按鈕按下事件
- 16. 如何找出在UINavigationBar中是否點擊後退按鈕?
- 17. 如何更改UINavigationBar後退按鈕的文字?
- 18. 如何將UINavigationBar後退按鈕的標題更改爲「返回」
- 19. 如何設置UINavigationBar上後退按鈕的文本?
- 20. 如何添加後退按鈕到自定義的UINavigationBar
- 21. 如何向我的UINavigationBar添加後退按鈕?
- 22. 在Wpf中獲取自動調整寬度的按鈕寬度
- 23. 如何在ios上的UINavigationBar後退按鈕上按下後隱藏鍵盤
- 24. 如何以編程方式將後退按鈕添加到UINavigationBar?
- 25. 如何更改uinavigationbar後退按鈕文本
- 26. 如何手動添加'後退'按鈕到UINavigationBar?
- 27. 如何更改後退按鈕從文本到圖像在UINavigationBar
- 28. 如何刪除「後退」按鈕/如何保留後退按鈕
- 29. 使用後退按鈕的問題UINavigationBar中的名稱
- 30. UINavigationBar的:攔截後退按鈕和向後滑動手勢
沒有喜悅 - navigationItem屬性爲零。 – Simon
oops @simon你讓我。謝謝 – Anand