2017-01-18 23 views
0

我有一個用Swift編寫的iOS應用程序,並且UIActivityViewController中的取消按鈕缺少其文本。按鈕全白。有任何想法嗎?UIActivityViewController中的取消按鈕文本丟失

func photoEditViewController(_ photoEditViewController: PhotoEditViewController, didSave image: UIImage, and data: Data) { 

    let objectsToShare: [AnyObject] = [ image ] 
    let activityViewController = UIActivityViewController(activityItems: objectsToShare, applicationActivities: nil) 
    activityViewController.popoverPresentationController?.sourceView = self.window?.rootViewController?.view 
    activityViewController.completionWithItemsHandler = { activity, success, items, error in 
     if success { 
      let alertController = UIAlertController(title: "Done", message: "Thanks for share!", preferredStyle: .alert) 
      let okBtn = UIAlertAction(title: "OK", style: .default, handler: nil) 
      alertController.addAction(okBtn) 
      self.topMostController().present(alertController, animated: true, completion: nil) 
     } 
    } 
    topMostController().present(activityViewController, animated: true, completion: {() in 

    }) 

} 


func topMostController() -> UIViewController { 
    var topController: UIViewController = UIApplication.shared.keyWindow!.rootViewController! 
    while (topController.presentedViewController != nil) { 
     topController = topController.presentedViewController! 
    } 
    return topController 
} 

image here

+0

okBtn後添加此,並將其添加到警報控制器 讓cancelBtn = UIAlertAction(標題: 「取消」,風格:.cancel,處理:無) –

回答

0

您應該添加 '取消按鈕' 作爲一個單獨的行動

let cancelBtn = UIAlertAction(title: "Cancel", style: .cancel, handler: nil) 
alertController.addAction(cancelBtn) 
0

你有沒有設置

UIButton.appearance().tintColor = UIColor.white 

這就是我所做的。

0
[[UIBarButtonItem appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor whiteColor]} forState:UIControlStateNormal]; 
[[UIBarButtonItem appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor whiteColor]} forState:UIControlStateHighlighted];