问题描述
|
我正在创建一个自定义导航按钮(如下所示),除一件事外一切都进行得很顺利...
UIButton* btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btn.bounds = CGRectMake(0,40,40);
btn.autoresizingMask = UIViewAutoresizingFlexibleHeight;
UIBarButtonItem* barBtn = [[[UIBarButtonItem alloc] initWithCustomView:btn] autorelease];
self.navigationItem.rightBarButtonItem = barBtn;
...如果我从纵向开始,然后将另一个视图控制器推到导航上,然后将方向更改为横向,然后弹出顶视图控制器,则自定义导航按钮不会自动调整其大小(因此对于导航栏来说太大了)
当按钮可见时,它将调整大小。
如果我将UISegmentedControl替换为UIButton,那么它也可以工作(即使方向发生更改并且另一个viewcontroller在顶部)。
有人知道我没有设置什么魔术标记吗?
谢谢
解决方法
btn.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;