答案 0 :(得分:0)
实际上,据我所知,有3种方法可以实现这一目标。
1 - >使用UIViewController
代替UITableViewController
在UIViewController
中,您可以添加UITableView
,然后根据您的要求在UIButton
底部添加UIViewController
。
2 - >在UINavigationController View
您可以通过编程方式在UINavigationController's view
上添加按钮(如果您使用UINavigationController
)。
3 - >在Application Window
您可以通过编程方式在UIWindow
上添加按钮。
For 2nd&第3点
如果您只想使用UITableViewController
,这些情况适用。为此,您需要在TableViewController
。
let button : UIButton = {
let button = UIButton(type: .custom)
button.translatesAutoresizingMaskIntoConstraints = false
button.setTitle("Redeem", for: .normal)
button.backgroundColor = .green
return button
}()
然后在UIWindow
或UINavigationController's view
上添加按钮,如下所示:
如果您想添加按钮UIWindow
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
if let window = UIApplication.shared.keyWindow
{
window.addSubview(button)
button.centerXAnchor.constraint(equalTo: window.centerXAnchor).isActive = true
let bottomSpaceConstraints = NSLayoutConstraint.constraints(withVisualFormat: "V:[v0(40)]-20-|", options: .init(rawValue: 0), metrics: nil, views: ["v0" : button])
NSLayoutConstraint.activate(bottomSpaceConstraints)
button.widthAnchor.constraint(equalToConstant: 100).isActive = true
}
}
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
button.removeFromSuperview()
}
如果您想在UINavigationController
中添加它。
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
if let navigationView = self.navigationController?.view
{
navigationView.addSubview(button)
button.centerXAnchor.constraint(equalTo: navigationView.centerXAnchor).isActive = true
let bottomSpaceConstraints = NSLayoutConstraint.constraints(withVisualFormat: "V:[v0(40)]-20-|", options: .init(rawValue: 0), metrics: nil, views: ["v0" : button])
NSLayoutConstraint.activate(bottomSpaceConstraints)
button.widthAnchor.constraint(equalToConstant: 100).isActive = true
}
}
<强> 记住 强>
在第二和第二种情况下3,您应该在viewWillDisappear
方法中删除该按钮,因为您不希望每个屏幕上都出现该按钮。
在所有情况下,结果都是这样的:
答案 1 :(得分:0)
好的,根据需要在底部打开一个FIXED按钮,按照以下步骤操作:
UIViewController
Storyboard
UITableView
UIViewController
UIView
底部添加UIViewController
UIView
添加约束,将其左下角,右下角添加到其超级视图&amp;将UIView.height
Constraints
设为固定值Constraints
添加到UITableView
,向上,左,右添加到其超级视图&amp;底部有UIView
UIButton
上添加UIView
水平&amp;垂直居中于其超级视图供您参考demo project zip也添加了这些步骤