UITabBar の高さを変更する必要がある iOS アプリを開発しています。まず、タブバーのフレーム プロパティを介して変更しましたが、期待どおりの結果が得られず、アイコンのサイズも非常に小さかったです。そこで、タブバーの背景を変更し、アイコンのサイズを大きくする次のコードを書きました。
for (UIView *view in ctrl.tabBar.subviews) {
if ([NSStringFromClass(view.class) isEqualToString:@"_UITabBarBackgroundView"]) {
[view removeFromSuperview];
CGRect frame = ctrl.tabBar.frame;
frame.origin = CGPointZero;
frame.size.height = floor(frame.size.height / 2);
UIView *background = [[UIView alloc] initWithFrame:frame];
background.backgroundColor = [UIColor colorWithRed:0.15 green:0.15 blue:0.15 alpha:1.0];
background.userInteractionEnabled = NO;
[ctrl.tabBar addSubview:background];
[ctrl.tabBar sendSubviewToBack:background];
[background release];
}
for (UIView *subview in view.subviews) {
if ([NSStringFromClass(subview.class) isEqualToString:@"UITabBarSwappableImageView"]) {
CGRect frame = subview.frame;
frame.size.height = 80;
subview.frame = frame;
subview.contentMode = UIViewContentModeCenter;
}
if ([NSStringFromClass(subview.class) isEqualToString:@"UITabBarButtonLabel"]) {
CGRect sFrame = subview.frame;
sFrame.size.height += diff;
subview.frame = sFrame;
}
}
}
そこで、「このコードは承認しても安全かどうか」を確認したいのです。