如何将图像和标签添加到UINavigationBar作为标题?

The*_*onz 8 uinavigationbar uiimage ios

目前我只知道如何将字符串作为标题:

[self setTitle:@"iOS CONTROL"];
Run Code Online (Sandbox Code Playgroud)

或带图像

self.navigationItem.titleView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"icon.png"]];
Run Code Online (Sandbox Code Playgroud)

但不是两个在同一时间

有解决方案吗?谢谢

Vin*_*yne 16

您可以根据需要创建UIView并添加任意数量的子视图.例如:

UIView *titleView = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 100.0, 40.0)];
titleView.backgroundColor = [UIColor clearColor];

UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"icon.png"]];

UILabel *titleLabel = [[UILabel alloc] init];
titleLabel.backgroundColor = [UIColor clearColor];
titleLabel.textColor = [UIColor redColor];
titleLabel.text = @"My Title Label";
[titleLabel sizeToFit];

...

// Set the frames for imageView and titleLabel to whatever you need them to be

...

[titleView addSubview:imageView];
[titleView addSubview:titleLabel];

self.navigationItem.titleView = titleView;
Run Code Online (Sandbox Code Playgroud)