检查用于在viewController本身

时间:2017-07-25 13:42:46

标签: ios swift uiviewcontroller

有这样的方法:

//Metodo che verifica se proveniamo dal Profile controller o da un altro controller
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier == "accountSegue" {
        self.DisattivaTutorialBtn.isHidden=true
         IndietroBtn.isHidden=false
    }else{
        self.IndietroBtn.isHidden=true
        self.DisattivaTutorialBtn.isHidden=false
    }


}

我根据segue的标识符执行不同的操作。 当然,这种方法在任何地方都没有被调用(我明白它是这样的):我怎么称呼它?它似乎很愚蠢,但称之为" self" " viewDidLoad"中的方法不起作用。

3 个答案:

答案 0 :(得分:1)

要执行此操作而不是在故事板中单击按钮执行Segue,请从viewcontroller创建segue到其他视图控制器。然后当你想从按钮点击或任何其他动作事件进入下面的下一个视图控制器调用时。

self.performSegue(withIdentifier: "accountSegue", sender: self)

这将自动调用prepareForSegue方法,if语句将执行。

答案 1 :(得分:0)

如果您在故事板中使用手动分段,则可以通过调用[self.collectionview registerClass:[NewCell class] forCellWithReuseIdentifier:@"Cell"]; 来执行segue。见performSegue documentation。 如果您使用的类型未设置为手动的segue,当您在Storyboard中单击segue链接到的UI元素时,系统将自动调用self.performSegue(withIdentifier:sender:)

答案 2 :(得分:0)

要手动执行Segue,您需要附加操作 以下将帮助您完成所需的工作

<md-checkbox name="chkSelectAll" 
             [(ngModel)]="isSelectAll" 
             (change)="onSelectAll(); disableCheckBox()"
             [disabled]="disableFlag"></md-checkbox>


<md-checkbox name="chkSelectAll" 
             [(ngModel)]="isSelectAll" 
             (change)="onSelectAll(); disableCheckBox()" 
             [disabled]="disableFlag"></md-checkbox>