所以我有viewcontroller1,我有一个UIScrollview
来移动它。我有一个Home
按钮,按下时将scrollView移动到所需位置。
那部分工作正常。
import UIKit
class ViewController: UIViewController {
@IBAction func home(sender: AnyObject) {
if (scrollView != nil){
scrollView.scrollRectToVisible(CGRectMake(8, 1004, 359, 496), animated: true)
}
}
@IBOutlet var scrollView2: UIScrollView!
@IBOutlet weak var label: UILabel!
@IBOutlet weak var scrollView: UIScrollView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
if (scrollView2 != nil){
scrollView2.contentSize.height = 5000
scrollView2.contentSize.width = 375
}
if (ScrollView != nil){
scrollView.contentSize.height = 5000
scrollView.contentSize.width = 375
}
}
}
我有第二个视图控制器,从第一个视图控制器出现Push
segue。此视图控制器还有一个名为UIButton
的{{1}}。当我单击viewController2中的Home
按钮时,我想返回viewController1并在那里执行Home
动作以将scrollView定位在viewController1中。
如何在Swift中执行此操作?谢谢!
答案 0 :(得分:1)
您想在viewController2中按 Home 按钮并返回viewController1并执行一个方法来定位您的scrollView。
您可以使用展开segue 执行此任务。在初始viewController中的home
函数正下方,添加一个名为goHome
的方法:
@IBAction func home(sender: AnyObject) {
if (scrollView != nil) {
scrollView.scrollRectToVisible(CGRectMake(8, 1004, 359, 496), animated: true)
}
}
@IBAction func goHome(segue: UIStoryboardSegue) {
// Call the home method to position the scrollView
home(self)
}
然后在故事板中, Control -drag从viewController2中的 Home 按钮到viewController顶部的Exit
图标,然后选择{{ 1}}来自弹出窗口。
然后当您运行应用程序并在viewController2中按 Home 时,它将展开回到viewController1并调用goHome
以将scrollView定位在您想要的位置。