ios - 如何创建自定义导航栏

标签 ios xcode xcode4

我正在尝试创建自定义底部导航栏,但我不希望它是矩形样式。我只想要一个大圆圈(它将是一张图片),用户可以将其作为按钮点击。

我知道我可以自定义底部栏的外观,但我不确定如何在中心添加图像并使其溢出栏的原始边界。现在我有这样的东西

UIBarButtonItem *item3 = [[UIBarButtonItem alloc]
                          initWithBarButtonSystemItem:UIBarButtonSystemItemOrganize
                          target:self
                          action:nil];

NSArray *items = [NSArray arrayWithObjects:item1, flexibleSpace, item2, flexibleSpace, item3, nil];

self.toolbarItems = items;`

这里有一张图片作为说明。谢谢! enter image description here

最佳答案

制作自定义导航栏需要大量工作,因此您可以在图像上制作自定义按钮,当用户单击它时将更改图像或操作(用户“点击”图像警报弹出:):

ViewController.h

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController {
    IBOutlet UIImageView *onlyImageVIew;
    BOOL firstImage;
}
@property (nonatomic, retain) UIImageView *onlyImageVIew;
-(IBAction)buttonClicked;
@end

ViewController.m

@implementation ViewController
@synthesize firstImage, secondImage;

- (IBAction)buttonClicked {
    if (firstImage == YES) {
        onlyImageView.image = [UIImage imageNamed:@"yourImage.png"];
        firstImage == NO
    }
    else {
        onlyImageView.image = [UIImage imageNamed:@"yourSecondImage.png"];
        firstImage == YES
    }
}

- (void)viewDidLoad {
    [super viewDidLoad];

    // when view loaded, load the first image only.
    firstImage = YES;
    onlyImageView.image = [UIImage imageNamed:@"yourLaunchImage.png"];
}

关于ios - 如何创建自定义导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14049363/

相关文章:

ios - 有没有什么东西会重复touchesBegan?

ios - UITableview 附件类型在滚动时消失

ios - 当应用程序在后台时更新 MKMapView

swift - NavigationView 的内容未显示 SwiftUI

iphone - 如何在UITextfield中多次输入文本

ios - xCode 5.1 CopyPNG文件错误

xcode - Xcode 4.6 的备份代码片段

xcode4 - 如何将 IBPlugin 安装到 Xcode4?

xcode4 - 如何在 Xcode4 中的界面构建器停靠的大纲 View 中方便地显示/展开子级别

iphone - 如何在 xcode4 中进行无依赖清理