Ios 如何在TableViewCell中居中放置UIButton?

Ios 如何在TableViewCell中居中放置UIButton?,ios,swift,uitableview,Ios,Swift,Uitableview,我想让我的自定义按钮在tableView单元格中居中,因为它感觉按钮有点向左偏移(我想这是因为附件类型的框架)。 我尝试过使用DidSelectRowatineXpath,但我觉得我想使用UIButton。你知道如何在tableviewcell center中创建我的按钮吗?我尝试过使用self.view.center,但它不起作用。下面是代码: self.buatAkunBtn = UIButton(frame: CGRectInset(self.buatAkunBtnCell.con

我想让我的自定义按钮在tableView单元格中居中,因为它感觉按钮有点向左偏移(我想这是因为附件类型的框架)。 我尝试过使用DidSelectRowatineXpath,但我觉得我想使用UIButton。你知道如何在tableviewcell center中创建我的按钮吗?我尝试过使用self.view.center,但它不起作用。下面是代码:

    self.buatAkunBtn = UIButton(frame: CGRectInset(self.buatAkunBtnCell.contentView.bounds, 0, 0))
    self.buatAkunBtn.setTitle("Masuk", forState: UIControlState.Normal)
    self.buatAkunBtn.setTitleColor(acehBusColor, forState: .Normal)
    self.buatAkunBtn.addTarget(self, action: Selector("btncreateAccTapped:"), forControlEvents: .TouchUpInside)
    self.buatAkunBtnCell.addSubview(self.buatAkunBtn)
以下是由上述代码引起的图像:
方法0:

如果你真的想使用代码,下面是我如何解决你的问题:

self.buatAkunBtn = UIButton(frame: CGRectInset(self.buatAkunBtnCell.contentView.frame.offsetBy(dx: 30, dy: 0), 0, 0))
self.buatAkunBtn.setTitle("Masuk", forState: UIControlState.Normal)
self.buatAkunBtn.setTitleColor(acehBusColor, forState: .Normal)
self.buatAkunBtn.addTarget(self, action: Selector("btncreateAccTapped:"), forControlEvents: .TouchUpInside)
self.buatAkunBtnCell.addSubview(self.buatAkunBtn)

或者,您可以使用界面生成器,它将更加简单和优雅

方法1:

1) 点击你的按钮

2) 将相对于单元格0的约束添加到左侧,相对于单元格0的约束添加到右侧

3) 您的UI按钮现在居中

方法2(推荐):

1) 点击你的按钮

2) Ctrl键从按钮拖动到单元格

3) 选择“在容器中水平居中”

方法3(推荐):

1) 点击你的按钮

2) 单击右下角的对齐约束图标

3) 单击复选框:“在容器中水平居中”


方法0:

如果你绝对想使用代码。以下是我将如何解决您的案例:

self.buatAkunBtn = UIButton(frame: CGRectInset(self.buatAkunBtnCell.contentView.frame.offsetBy(dx: 30, dy: 0), 0, 0))
self.buatAkunBtn.setTitle("Masuk", forState: UIControlState.Normal)
self.buatAkunBtn.setTitleColor(acehBusColor, forState: .Normal)
self.buatAkunBtn.addTarget(self, action: Selector("btncreateAccTapped:"), forControlEvents: .TouchUpInside)
self.buatAkunBtnCell.addSubview(self.buatAkunBtn)

或者,您可以使用界面生成器,它将更加简单和优雅

方法1:

1) 点击你的按钮

2) 将相对于单元格0的约束添加到左侧,相对于单元格0的约束添加到右侧

3) 您的UI按钮现在居中

方法2(推荐):

1) 点击你的按钮

2) Ctrl键从按钮拖动到单元格

3) 选择“在容器中水平居中”

方法3(推荐):

1) 点击你的按钮

2) 单击右下角的对齐约束图标

3) 单击复选框:“在容器中水平居中”


你太棒了,伙计!但我并没有在情节提要上创建按钮,而是通过编程实现的,而且按钮不是在自身上,而是在表视图单元格中。你能给我看一下伪代码吗?谢谢,我可以。但是为什么不在stroryboard上创建按钮呢?没有必要以编程方式创建它。请先告诉我为什么:),因为界面生成器将是一个更优雅的解决方案。如果你确实需要在你的按钮上使用代码,那就做一个IBOutlet。我知道,这是我的例子。我制作了一个静态表视图单元格,其中包含所有文本字段和表视图单元格内的一个按钮。我制作的表格视图单元是程序化的,所以在主板上,它只是一个原型视图单元,所有的文本字段和按钮还不存在。事情就是这样。谢谢。它不起作用了((CGRectMake表示无法为UIButton赋值。TranslateAutoResize表示UIButton没有成员集TranslateAutoResizezingMaskinToConstraints从不说“它不起作用”,最好告诉我们您遇到了什么错误:)所以我们可以帮你你太棒了,伙计!但是我没有在情节提要上创建按钮,而是通过编程,按钮不在自身上,而是在表视图单元格内。你能给我看一下伪代码吗?谢谢。我可以。但是为什么不在情节提要上创建按钮呢?没有必要通过编程创建它。请先告诉我为什么:)因为界面生成器将是一个更加优雅的解决方案。如果你确实需要在你的按钮上使用代码,那就做一个IBOutlet。我知道,这是我的例子。我制作了一个静态表视图单元格,其中包含所有文本字段和表视图单元格内的一个按钮。我制作的表格视图单元是程序化的,所以在主板上,它只是一个原型视图单元,所有的文本字段和按钮还不存在。事情就是这样。谢谢。它不起作用了((CGRectMake表示无法为UIButton赋值。TranslateAutoResize表示UIButton没有成员集TranslateAutoResizezingMaskinToConstraints从不说“它不起作用”,最好告诉我们您遇到了什么错误:)因此我们可以帮您