我想重现一个类似导航栏的 Tweetbot。
我仍在寻找是否可以在一个栏中放置一个UIButton
代替标题,并使其完全适合左右按钮之间,就像在 Tweetbot 应用程序中所做的那样。
当我尝试这样做时,超过一定大小会自动缩小UINavigationBar
self.navigationItem.titleView
如果我遗漏了一些明显的东西,请告诉我,
谢谢
我提供了两张截图让你看看我在说什么
我想重现一个类似导航栏的 Tweetbot。
我仍在寻找是否可以在一个栏中放置一个UIButton
代替标题,并使其完全适合左右按钮之间,就像在 Tweetbot 应用程序中所做的那样。
当我尝试这样做时,超过一定大小会自动缩小UINavigationBar
self.navigationItem.titleView
如果我遗漏了一些明显的东西,请告诉我,
谢谢
我提供了两张截图让你看看我在说什么
他们可能已经推出了自己的UINavigationBar
和/或UINavigationController
. 我想尝试破解 UIKit 是不值得的,因为它会非常脆弱并且不会面向未来。
您是否尝试在 titleView 上将 autoresizesSubviews 设置为 YES,然后在 UIButton 上设置正确的自动调整大小掩码?如果这不起作用,我建议您创建自定义视图子类并覆盖 -layoutSubviews 以满足您的需求。
您可以向导航项的标题视图属性添加一个按钮,该属性接受 UIView,并且由于 UIButton 是 UIView 的子类,因此这不是问题。
或者,如果您使用故事板,只需将一个按钮拖到导航栏的中心,就这么简单。
// Create the button, and specify the type
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
// Set the button's frame
button.frame = CGRectMake(0.0f, 0.0f, 30.0f, 30.0f);
// Set your custom image for the button
[button setImage:[UIImage imageNamed:@"YOUR_IMAGE_NAME"] forState:UIControlStateNormal];
// Set the button's action, which is the method that will be called when it is pressed
[button addTarget:self action:@selector(doSomething:) forControlEvents:UIControlEventTouchUpInside];
// Add the button to the navigation bar's title view
[self.navigationItem.titleView addSubview:button];