- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 swift 4/iOS 12 应用程序,它为所有 View Controller 使用自定义导航栏 barTintColor 并在 appDelegate.swift 中设置如下:
UINavigationBar.appearance().barTintColor = UIColor(red: 229/255, green: 80/255, blue: 57/255, alpha: 1.0)
但是,我想在呈现 activityViewController 时更改颜色,以便邮件撰写 View 获得白色 barTint。我通过这样做实现了这一目标:
let activityViewController = UIActivityViewController(activityItems: textShare , applicationActivities: nil)
activityViewController.popoverPresentationController?.sourceView = self.view
self.present(activityViewController, animated: true, completion: { () in
UINavigationBar.appearance().barTintColor = UIColor.white
})
但是当我关闭 activityViewController 时,整个应用程序的导航栏的 tintColor 已经改变。这不是我想要的行为。当我关闭 activityViewController 时,我希望将 tintColor 设置回来,但我不知道如何捕捉“willDisappear”函数,所以我可以将它设置回来。
最佳答案
UIActivityViewController
是 UIViewController
的子类,因此您可以覆盖它的方法,如 viewWillDisappear
、viewDidAppear
等。
因此,首先创建 UIActivityViewController
的自定义子类,然后覆盖其 viewWillDisappear
方法并声明当 ViewController 消失时应该发生什么。
class YourActivityViewController: UIActivityViewController {
override func viewWillDisappear(_ animated: Bool) {
UINavigationBar.appearance().barTintColor = UIColor(red: 229/255, green: 80/255, blue: 57/255, alpha: 1.0)
}
}
然后只需将您的 activityViewController
声明为您的 UIActivityViewController
子类
let activityViewController = YourActivityViewController(activityItems: textShare , applicationActivities: nil)
关于swift - 在 activityViewController 中更改 barTintColor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53805136/
我的 TableView 应用程序有一个自定义单元格。 TableViewController 称为“BlogView”。我的自定义单元格上有几个按钮,其中一个是共享按钮。我想在按下其中一个按钮时显示
我正在尝试在我的应用程序中实现共享按钮,因此很自然地,我转向了 UIActivityViewController。由于某种原因,每当我按下共享按钮并弹出该按钮时,我都会在日志中收到以下消息:
我有一个带有静态表的TableViewController;其中一个单元格包含一个名为 graphArea 的 UIView。该 View 渲染一个图表、它的背景和一条轴线——所有这些都在它的draw
如何制作支持 ActiveViewController 的应用程序? 我的意思是当用户在 safari 中打开 ActiveViewController 时,我希望我的应用程序是参与者之一。并从 sa
我有一个 UIActivity 实现了 activityViewController 方法。一切正常,除非用户快速双击我的事件图标。这会导致重复调用该方法并崩溃: Terminating app du
我正在尝试使用 UIActivityViewController 从我的应用中分享视频。下面是我使用的代码: var url = NSURL(string: path!)! var activityV
我使用以下代码在 WhatsApp 和 Mail 上分享一些网址。 @objc func onclickOfShareButton(sender:UIButton){ let myW
我目前有一个 UICollectionView,我希望能够在其中显示一个 activityViewController 以启用共享(不是来自单元格,而是来自 UIView 在 collectionVi
我有一个 swift 4/iOS 12 应用程序,它为所有 View Controller 使用自定义导航栏 barTintColor 并在 appDelegate.swift 中设置如下: UINa
我的项目全部在 Storyboard 中,我有一个 UITableViewController 嵌入到 NavigationController 中,并且在每个单元格上我都有一个按钮来共享通知。
我的应用尚未上线。我从 App Store Connect 获得了应用 ID。我想在社交媒体应用程序上分享应用程序链接。我使用了 UIActivityViewController: let strin
在 iOS 6 中使用客户 UIActivity 子类时,可以指定一个自定义 View Controller ,当您从初始 UIActionViewController 的 View 中选择您的操作时
var selectedVideoArray: Array = [] func collectionView(_ collectionView: UICollectionView, didSelect
好吧,我让我的 ActivityViewController 在正常共享时正常工作,但是每当用户在调用 ActivityViewController 后点击取消时,我都会收到恼人的 fatal err
我有 PDF 文件作为 CKAssets,它们在 UIWebView 中被调用和呈现,没有问题。我已经设法操纵代码,以便 CKAsset 将出现在 ActivityViewController 中,但
我有下面的代码来切换 UIActivityViewController @IBAction func shareButtonClicked(sender: UIButton) { let te
我正在使用新的 ActivityViewController 让用户可以在 Facebook 或 Twitter 上分享消息。我更改了 excludedActivityTypes 属性,以便在 Act
我是一名优秀的程序员,十分优秀!