UIbarButton アイテムを含むツールバーを使用しています。そのためのタグを指定しました。あるシナリオでは、ツールバーのすべてのサブビューを取得し、1 つのボタンを無効にする必要があります。
for (id toolBarSubView in [self.topToolBar subviews]) {
NSLog(@"toolBarSubView details %@",toolBarSubView);
if ([toolBarSubView isKindOfClass:[UIBarButtonItem class]] && [toolBarSubView tag] == 103) {
UIButton* backButton = (UIButton*)toolBarSubView;
backButton.enabled = YES;
}
else if([toolBarSubView isKindOfClass:[UIBarButtonItem class]] && [toolBarSubView tag] == 102)
{
UIButton* navigationTitle = (UIButton*)toolBarSubView;
navigationTitle.enabled = NO;
}
else if([toolBarSubView isKindOfClass:[UIBarButtonItem class]] && [toolBarSubView tag] == 104)
{
UIButton* infoButton = (UIButton*)toolBarSubView;
infoButton.enabled = NO;
}
上記のコードを使用しています。このようなクラス名を見つけようとしています [toolBarSubView isKindOfClass:[UIBarButtonItem class]
しかし、条件は失敗しています。どの条件も成功ではありません。コンソールで必要なクラスは、次のようなものです 2013-09-13 12:15:35.943 12:15:35.945 Receipts[1544:60b] toolBarSubView の詳細 > 2013-09-13 12:15:35.947 Receipts[1544:60b] toolBarSubView の詳細 >