Sök…


En översikt

Från Apple-dokumentationen:

Ett UIStoryboardSegue-objekt ansvarar för att utföra den visuella övergången mellan två visningskontroller . Dessutom används segmentobjekt för att förbereda för övergången från en visningsstyrenhet till en annan. Segue-objekt innehåller information om visningskontrollanter som är involverade i en övergång . När en segue utlöses, men innan den visuella övergången inträffar, kallas storyboard-körtiden för den aktuella visningskontrollerns förberedelseForSegue: avsändare: metod så att den kan överföra alla nödvändiga data till visningskontrollern som håller på att visas.


attribut

Snabb

sourceViewController: UIViewController {get}
destinationViewController: UIViewController {get}
identifier: String? {get}

referenser:

Förbereda visningskontrollern innan en segue startas

PrepareForSegue :

 func prepareForSegue(_ segue:UIStoryboardSegue, sender sender:AnyObject?) 

Meddelar visningskontrollern att ett segment håller på att utföras

parametrar

segue : Segue-objektet.

avsändare : Objektet som initierade segmentet.

Exempel i Swift

Utför en uppgift om identifieraren för segmentet är "SomeSpecificIdentifier"

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "SomeSpecificIdentifier" {
        //- Do specific task
    }
}

Bestämmer om ett åberopat Segue ska utföras.

ShouldPerformSegueWithIdentifier :

 func shouldPerformSegueWithIdentifier(_ identifier:String, sender sender:AnyObject?) -> Bool 

Bestämmer om segmentet med den angivna identifieraren ska utföras.

parametrar

Identifierare : Sträng som identifierar det utlösta segmentet

Avsändare : Objektet som initialiserade segmentet.

Exempel i Swift

Utför endast segue om identifieraren är "SomeSpecificIdentifier"

override func shouldPerformSegueWithIdentifier(identifier:String, sender:AnyObject?) -> Bool {
    if identifier == "SomeSpecificIdentifier" {
        return true
    }
    return false
}

Använd Segues för att navigera bakåt i navigationsstacken


Koppla av segrar

Avlindningssegment ger dig ett sätt att "varva ner" navigationsstacken och ange en destination du vill gå tillbaka till. Signaturen för denna funktion är nyckeln till att Interface Builder känner igen den. Det måste ha ett returvärde för IBAction och ta en parameter av UIStoryboardSegue . Namnet på funktionen spelar ingen roll. Faktum är att funktionen inte ens behöver göra någonting. Det är bara där som en markör för vilken UIViewController är destinationen för Unwind Segue. [Källa] [1]

Krävs underskrift av ett avkopplingssegment

Mål C:

-(IBAction)prepareForUnwind:(UIStoryboardSegue *)segue {
}

Snabb:

@IBAction func prepareForUnwind(segue: UIStoryboardSegue) {
}

Trigger Segue programmatiskt

PerformSegueWithIdentifier:

 func performSegueWithIdentifier(_ identifier:String, sender sender:AnyObject?)

Initierar segmentet med den angivna identifieraren från den aktuella visningskontrollerns storyboard-fil

parametrar

Identifierare : Sträng som identifierar det utlösta segmentet

Avsändare : Objektet som kommer att initiera segmentet.

Exempel i Swift

Utför ett segment med identifieraren "SomeSpecificIdentifier" från en radval i tabellvy:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    performSegueWithIdentifier("SomeSpecificIdentifier", sender: indexPath.item)
}


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow