我以编程方式向UISegmentedControl
navigationItem.titleView
第一次显示时它会像我期望的那样居中。但是当我潜入一个详细视图控制器时,我可以看到我的titleView的视图被推到了左上角,而我没有尝试过任何东西让它回来
在我的初始化方法中,我这样做
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:segmentTextContent];
segmentedControl.selectedSegmentIndex = 0;
[segmentedControl setTranslatesAutoresizingMaskIntoConstraints:NO];
segmentedControl.autoresizingMask = UIViewAutoresizingFlexibleWidth;
//segmentedControl.frame = CGRectMake(0, 0, 280.0f, 30.0f);
self.navigationItem.titleView = segmentedControl;
过了一段时间我意识到设置CGRectMake
没有影响
我还尝试将此登录信息放在viewDidAppear
中,但也没有改变此结果
以前,当我尝试将UISegmentedControl放入另一个UIView中时,我失去了点击UISegmentedControl的能力(我不确定我是否有一个这样的变体解决了我的定位问题)
答案 0 :(得分:3)
如果你只有两个片段,我觉得它不需要调整大小,它的宽度总是适合iPhone 4及更低版本。
如果删除以下内容会发生什么:
[segmentedControl setTranslatesAutoresizingMaskIntoConstraints:NO];
segmentedControl.autoresizingMask = UIViewAutoresizingFlexibleWidth;