我知道self.navigationItem.rightBarButtonItem.enabled = NO
,但我如何使UIBarButtonItem
出現禁用,但實際上檢測到用戶點擊它時?如果我想提醒用戶什麼是不完整的,我想這樣做。使UIBarButtonItem顯示爲禁用?
0
A
回答
1
我這樣做的方式並不禁用它,但是當它的'禁用'設置另一個酒吧按鈕項目與殘疾的看背景和沒有替代圖像的輕拍事件。然後,當它被點擊時顯示警告,以便告訴他們,這是不可用:
- (void)init
{
[self setDisabledBarButtonItem:[UIBarButtonItem alloc] initWith...];
[disabledBarButtonItem addTarget:......];
[self setEnabledBarButtonItem:[UIBarButtonItem alloc] initWith...];
[enabledBarButtonItem addTarget......];
}
- (void)timeToDisableBarButtonItem:(id)sender
{
[self.navigationitem setRightBarButtonItem:disabledBarButtonItem animated:NO];
}
- (void)timeToEnableBarButtonitem:(id)sender
{
[self.navigationitem setRightBarButtonItem:enabledBarButtonItem animated:NO];
}
好UX的做法狀態然而,你不應該需要告訴你的用戶,這是殘疾人,他們應該是無需警報即可辨認。說起來容易,當然比做:)
很想看到一個比這更清潔的解決方案,但它是唯一的方式,我認爲你會得到它的工作。
希望幫助:)
1
我也有類似的問題,但我試圖讓被禁用按鈕看起來啓用。我發現了一個更好的解決方案,可以在iOS 5.0中使用 - 您可以使用setTitleTextAttributes:forState
來控制已啓用(或在我的情況下已禁用)狀態以及其他許多狀態的外觀。
在大多數情況下,你不會想這樣做。然而,就我而言,事實證明是必要的。我有一個工具欄按鈕,它是一個文檔標題,在編輯模式下按下它可以啓動一個UITextField來編輯標題,但在運行模式下,標題不應該是可編輯的,但仍然看起來像一個標題,而不是一個禁用的按鈕。通過改變文本顏色以匹配我的啓用狀態,我實現了我想要的外觀和行爲,而不必交換按鈕或動作(因此必須在三個地方而不是兩個地方同步我的標題文本)。
相關問題
- 1. UIBarButtonItem不顯示禁用狀態titleTextAttributes
- 2. UIBarButtonItem不顯示
- 3. 使用Swift 4隱藏和顯示UIBarButtonItem
- 4. 從UIBarButtonItem顯示UIMenuController
- 5. UIToolbar不顯示UIBarButtonItem
- 6. UIBarButtonItem禁用動畫
- 7. 如何禁用UIBarButtonItem?
- 8. 如何將UIMenuController顯示爲UIBarButtonItem
- 9. 爲什麼UIBarButtonItem默認是禁用的?
- 10. UIBarButtonItem沒有顯示ios 8
- 11. UIBarButtonItem未顯示Swift 3
- 12. iphone如何禁用UIBarButtonItem
- 13. 顯示ng禁用爲啓用
- 14. 如何禁用UIBarButtonItem的用戶交互?
- 15. 複選框顯示爲禁用
- 16. 無法使用UIBarButtonItem顯示彈出窗口控制器
- 17. 返回的UIBarButtonItem沒有顯示出來?
- 18. 的UIBarButtonItem沒有顯示出來
- 19. 顯示來自UIBarButtonItem的UIActionSheet問題
- 20. 關閉高亮顯示的UIBarButtonItem
- 21. 無法獲得UIBarButtonItem與UILabel顯示
- 22. UIBarButtonItem沒有顯示在UIToolbar上Swift
- 23. ios UIBarButtonItem與UIBarButtonSystemItemCompose顯示紅色按鈕
- 24. 從UIButton而不是UIBarButtonItem顯示WEPopover
- 25. UIBarButtonItem未在子視圖中顯示
- 26. UIBarButtonItem不再顯示在iOS 11中
- 27. 當UIBarButtonItem被按下時顯示UIAlertView
- 28. 如何顯示不帶邊框的UIBarButtonItem?
- 29. 指紋驗證後不顯示UIBarButtonItem
- 30. 以編程方式突出顯示UIBarButtonItem
謝謝,阿隆。我現在可能只是遵循良好的用戶體驗實踐,並明確什麼是不完整的。 :) – ma11hew28