所以我正在用iOS开发我的第一个应用程序,但我不知道如何解决。在同一视图中,我有:
-buttons
中有两个stackView
(我已修改)
-UIImageView
Storyboard View
取决于我按哪个按钮,我希望图像在UIImageView
中改变。但是,由于按钮在stackView
中,因此我无法将IBAction
从按钮推入控制器。
我根据功能 didViewLoad()中的按钮更改了图像,但据我了解,该功能仅被调用一次,因此当我在菜单中按buttons
应用程序,它在UIImageView
中不再起作用。
这是我对此视图的控制权 Controller Code
这是UIStackView子类的代码的开头 UIStackView subclass
答案 0 :(得分:-1)
根据您的情况,您还可以选择使用分段控制器。
将分段控制器放在StoryBoard的View Controller中。
制作段控制器的插座
@IBOutlet var segmentedController: UISegmentedControl!
为分段控件中的IBAction
事件创建Value Changed
函数。现在,无论何时更改选定的选项卡,您都会收到通知。
@IBAction func SegmentTapped(_ sender: Any) {
switch segmentedController.selectedSegmentIndex {
case 0:
// Change Image Here
case 1:
// Change other image here
default:
// Statement to execute if no other case is present
}
}
答案 1 :(得分:-1)
在这种情况下,使用分段控制器将是一个好主意。谢谢你。
对于使用我已经写的东西使事情发生的更一般的方法,这篇文章(Open a storyboard view with a stackview button in Swift 3 and Xcode)非常有用,并且还教会我如何正确使用协议和委托。