UIBarButtonItem
iOS 6.1 で正常に動作するイメージを使用したカスタムがあります。しかし、iOS 7 には があり、tintColor
この色を画像に重ねます。ボタンに設定するtintColor
と[UIColor clearColor]
、すべて一緒に表示されません。
iOS 6 と同じように、iOS 7 で戻るボタンを表示するにはどうすればよいですか? 助けてください?
UIBarButtonItem
iOS 6.1 で正常に動作するイメージを使用したカスタムがあります。しかし、iOS 7 には があり、tintColor
この色を画像に重ねます。ボタンに設定するtintColor
と[UIColor clearColor]
、すべて一緒に表示されません。
iOS 6 と同じように、iOS 7 で戻るボタンを表示するにはどうすればよいですか? 助けてください?
UINavigationBar の外観を使用して、カスタムの戻るボタンをグローバルに設定する必要があります。
[UINavigationBar appearance].backIndicatorImage = customBackButton;
[UINavigationBar appearance].backIndicatorTransitionMaskImage = customBackButton;
UIBarButtonItem
iOS7でこのように設定してみてください:-
UIImage *temp = [[UIImage imageNamed:@"theImage"] imageWithRenderingMode: UIImageRenderingModeAlwaysOriginal];
UIBarButtonItem *barButtonItem = [[UIBarButtonItem alloc] initWithImage:temp style:UIBarButtonItemStyleBordered target:self action:@selector(action)];
Apple Dev centerディスカッション フォーラムの元の投稿は次のとおりです。
バージョン iOS7 とそれ以前の両方をサポートするには、次system-version
のようなコードをチェックして設定します。
UIImage *temp=nil;
if([[[UIDevice currentDevice] systemVersion] floatValue] < 7.0)
{
temp = [UIImage imageNamed:@"btn-back.png"];
}
else
{
temp = [[UIImage imageNamed:@"btn-back.png"] imageWithRenderingMode: UIImageRenderingModeAlwaysOriginal];
}
迅速なバージョン:
var backBtn = UIImage(named: "return_menu")
backBtn = backBtn?.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal)
self.navigationController!.navigationBar.backIndicatorImage = backBtn;
self.navigationController!.navigationBar.backIndicatorTransitionMaskImage = backBtn;
// ボタンに画像を追加
UIButton *refreshButton = [UIButton buttonWithType:UIButtonTypeCustom];
[refreshButton setFrame:CGRectMake(0,0,30,30)];
refreshButton.userInteractionEnabled = YES;
[refreshButton setImage:[UIImage imageNamed:@"yourimage.jpg"] forState:UIControlStateNormal];
// ASSIGNING THE BUTTON WITH IMAGE TO BACK BAR BUTTON
UIBarButtonItem *refreshBarButton = [[[UIBarButtonItem alloc] initWithCustomView:refreshButton] autorelease];
self.navigationItem.leftBarButtonItem = refreshBarButton;