我有一个UIButton,其框架是在分配时定义的。此按钮作为子视图添加到tableFooterView。
- (void)viewDidLoad {
[super viewDidLoad];
self.tableView = UITableView declaration...
self.checkButton = [[UIButton alloc] initWithFrame:(CGRect){30, 30, 260, 42}];
[self.tableView.tableFooterView addSubview:self.checkButton];
self.checkButton.center = CGPointMake(self.view.center.x,self.checkButton.frame.origin.y);
}
按钮的x位置未更新。我的代码有什么问题吗?
答案 0 :(得分:0)
您似乎将checkButton添加到tableFooterView中,所以您是否希望将checkButton置于tableFooterView或" self.view"中心?
如果你想把它放在tableFooterView中心,我相信你应该将checkButton的中心设置为它的中心。
尝试这样的事情:
self.checkButton.center = CGPointMake(self.tableView.tableFooterView.center.x,self.checkButton.frame.origin.y);
[self.tableView.tableFooterView addSubview:self.checkButton];
虽然您可能想要创建一个新的UIView,但是将该按钮添加到该中心,然后将其添加到tableFooterView。这将是一种更清洁的方法。
答案 1 :(得分:0)
不要忘记,使用新的Xcode和布局系统时,框架结构不起作用。
如果在xib上启用了布局系统,则可能是您遇到问题的原因。