Für eine Apple Watch Erweiterung stelle ich einen AlertController vor und erhalte eine Anzeige wie "Preset Optional (2)" anstelle von "Preset 2" - darunter steht mein Code. Wie kann ich das Fakultativ loszuwerden (habe sie nicht denken, Streicher hatte)Option für String-Anzeige erhalten
if let s = info["description"]
{
let action = WKAlertAction(title: "OK", style: WKAlertActionStyle.Default, handler: {() -> Void in
//
})
//let arr = s.componentsSeparatedByString("_")
let arr = s.characters.split("_", maxSplit: Int.max, allowEmptySlices: false).map(String.init)
self.presentAlertControllerWithTitle("Preset \(arr[0])", message: "\n\(arr[1])", preferredStyle: WKAlertControllerStyle.Alert, actions: [action])
}
Hier ist, wie info [ „Beschreibung“] abgeleitet:
func session(session: WCSession, didReceiveMessage message: [String : AnyObject])
{
if let info = message as? Dictionary<String,String>{
if let s = info["description"]
{
...
Gerade für die Zukunft kann jede Variable ein optional sein. – JAL
Versuchen Sie, die Entpackung wie Preset \ (arr [0]) zu erzwingen! –
@VishalSonawane ** NEIN ** Du solltest niemals etwas auspacken, außer du hast einen wirklich guten Grund dazu. – JAL