我正在尝试调整我放置在TableViewController的navigationItem.titleView
中的图像的大小。我在TableViewController viewDidLoad
中使用了以下代码来完成此任务:
UIImageView* iv = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 40, 40)];
iv.contentMode = UIViewContentModeScaleAspectFit;
UIImage* image = [UIImage imageNamed:@"logo.png"];
[iv setImage:image];
self.navigationItem.titleView = iv;
但是,图像似乎不受我设置的40 x 40帧的影响。结果如下:
图像明显超过我指定的40 x 40限制。 如何让图片不占用导航栏中的所有可用空间?我希望徽标更小,顶部和底部有一些填充。
答案 0 :(得分:2)
您应该创建一个UIView
,在其上添加您的徽标,然后使用此视图设置self.navigationItem.titleView
。您可以在下面查看我的代码。
UIView *titleView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 40, 40)];
UIImageView *titleImageView = [[UIImageView alloc] initWithFrame:titleView.frame];
titleImageView.image = [UIImage imageNamed:@"logo.png"];;
titleImageView.contentMode = UIViewContentModeScaleAspectFit;
[titleView addSubview:titleImageView];
self.navigationItem.titleView = titleView;