[英]How to test if item in toolBar is FlexibleSpace item?
我想知道UIBarButtonItem
枚舉的self.toolbarItems
是按鈕,哪個是靈活的空間項。
由於A-Live證實了我的發現,即無法查詢 UIBarButtonItem 以檢查它是否是 FlexibleSpace(或 FixedSpace),我使用標簽將這些項目標記為靈活和固定空間(2 個不同的整數)並將這些數字放入常量然后在我使用的代碼中:
for(int i=0; i<self.toolbarItems.count; i++)
{
if(item.tag != TOOLBAR_FIXED_SPACE_TAG &&
item.tag != TOOLBAR_FLEXIBLE_SPACE_TAG)
{
//count real button:)
}
}
上面的答案我無法實際工作,所以我使用了這個。 希望這可以幫助某人:
for(int i=0; i<[buttonArray count]; i++){
UIBarButtonItem *buttonItem = [[self items] objectAtIndex:i];
if(buttonItem.title){
NSLog(@"Double Boom %@", buttonItem);
}
}
** 靈活/固定空間不包含標題...這是我能立即看到的唯一真正區別。 所以,我實際上只是在檢查標題。
Dirty Swift 5.0 解決方案:
let fixedSpaces = toolbarItems?.filter({ $0.description.contains("systemItem=FixedSpace") })
它可能會隨着時間的推移而中斷,但足以用於調試目的。
每次使用后都要使用洗手液。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.