ios - 使用 material.io 时通过 segue 链接按钮
问题描述
我是 Swift 的初学者,我正在使用 Swift 中的 Material.io 创建一个登录屏幕,我的 UI 看起来像这样。但是我在我的 main.storyboard 上看不到任何东西我习惯于 手动创建一个 segue 然后使用
performSegue(withIdentifier: <#T##String#>, sender: <#T##Any?#>)
此外,通常在 main.storyboard 中,您有一个 IBOutlet 或 IBAction 块来触发某些功能,例如在单击按钮时执行某些操作。例如,当您使用 MDCButton 时,它是如何工作的。如何将按钮链接到触发 segue 或更新文本字段等操作。谢谢你。
我已经像这样声明了我的按钮
let nextButton: MDCButton = {
let nextButton = MDCButton()
let containerScheme = MDCContainerScheme()
nextButton.applyTextTheme(withScheme: containerScheme)
nextButton.setTitleColor(.white, for: .normal)
nextButton.translatesAutoresizingMaskIntoConstraints = false
nextButton.setTitle("CREATE NEW ACCOUNT", for: .normal)
nextButton.addTarget(self, action: #selector(didTapNext(sender:)), for: .touchUpInside)
return nextButton
}()
我这样称呼它
@objc func didTapNext(sender: Any) {
self.performSegue(withIdentifier: "toRegistration", sender: self)
self.dismiss(animated: true, completion: nil)
}
我有一个链接 2 个视图控制器的 segue。
解决方案
我看不到您的代码,也没有足够的代表发表评论,但看起来您正在以编程方式构建视图。要查看按钮何时touchUp
像从插座一样接收,您需要添加一个目标。尝试这样的事情:
func functionWhereYouCreateTheButton() { (PROBABLY YOUR VIEW DID LOAD)
let loginButton = UIButton()...
...
...
...
loginButton.addTarget(self, action: #selector(self.buttonTapped), for: .touchUpInside)
}
func buttonTapped() {
self.performSegue(withIdentifier: "SEGUEID", sender: self)
}
推荐阅读
- mongodb - MongoDb $where 不接受 javascript 函数
- c# - Catia V6 - 转义用户选择框会导致错误
- javascript - 谷歌地图标记上的选择选项不起作用
- php - “无法写入缓存目录”(Symfony)
- c# - 如何在调试模式下执行 C# 编码的 ui 项目时禁用截屏
- python - XML Python - 到 SQL
- django - 如何在 Windows 中退出“python manage.py runserver”
- dart - 在 ListView.builder 中从多个来源获取数据 - Flutter
- htmlcleaner - 如何在 Java 中设置 `invalidAttributeNamePrefix` 值?
- android - 如何防止地图在回收站视图后面滚动?