我在视图中有以下内容加载到我的表视图控制器上:
UIButton *change_view = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[change_view setTitle:@"List" forState:UIControlStateNormal];
[change_view addTarget:self action:@selector(toggleView:) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *button = [[UIBarButtonItem alloc] initWithCustomView: change_view];
self.navigationItem.rightBarButtonItem = button;
当我运行程序时,它不会显示任何标题或圆角矩形按钮。但是,如果我将类型更改为UIButtonTypeInfoLight,它将显示...那么问题是什么?
答案 0 :(得分:16)
我更喜欢以下方式来设置按钮的界限。
[button setTitle:@"Title" forState:UIControlStateNormal];
[button sizeToFit];
答案 1 :(得分:6)
尝试为change_view
设置合适的框架。
当您使用UIButtonTypeInfoLight
类型按钮时,使用一些内置大小(可能取决于用于它的图标),使用UIButtonTypeRoundedRect
类型默认框架,必须为CGRectZero
rect。