- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 iPhone 中创建类似控制中心的 View 。根据我的要求,当用户向上切换时, View 必须位于底部, View 需要从下到上出现,而关闭 View 需要从底部切换。就像控制中心一样,我需要一个 View ,有人可以帮助我吗?
最佳答案
您可以通过以下代码实现:
class ViewController: UIViewController, UIGestureRecognizerDelegate {
var viewControlCenter : UIView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
createControlCenterView()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
// MARK: - Gesture Methods
@objc func respondToSwipeGesture(sender: UIGestureRecognizer? = nil) {
if let swipeGesture = sender as? UISwipeGestureRecognizer {
switch swipeGesture.direction {
case UISwipeGestureRecognizerDirection.up:
if self.viewControlCenter.frame.origin.y != 0 {
UIView.animate(withDuration: 0.5, animations: {
self.viewControlCenter.frame.origin.y = 0
}, completion: nil)
}
break
case UISwipeGestureRecognizerDirection.down:
if self.viewControlCenter.frame.origin.y == 0 {
UIView.animate(withDuration: 0.5, animations: {
self.viewControlCenter.frame.origin.y = self.view.frame.size.height
}, completion: nil)
}
break
default:
break
}
}
}
@objc func onViewTapped(sender: UITapGestureRecognizer? = nil) {
if self.viewControlCenter.frame.origin.y == 0 {
UIView.animate(withDuration: 0.5, animations: {
self.viewControlCenter.frame.origin.y = self.view.frame.size.height
}, completion: nil)
}
}
// MARK: - Custom Methods
func createControlCenterView() {
viewControlCenter = UIView.init(frame: self.view.bounds)
self.viewControlCenter.frame.origin.y = self.view.frame.size.height
let viewBG : UIView = UIView.init(frame: self.view.bounds)
viewBG.backgroundColor = UIColor.init(red: 0, green: 0, blue: 0, alpha: 0.6)
viewControlCenter.addSubview(viewBG)
self.view.addSubview(viewControlCenter)
let swipeUp = UISwipeGestureRecognizer(target: self, action: #selector(respondToSwipeGesture(sender:)))
swipeUp.direction = .up
self.view.addGestureRecognizer(swipeUp)
let swipeDown = UISwipeGestureRecognizer(target: self, action: #selector(respondToSwipeGesture(sender:)))
swipeDown.direction = .down
self.view.addGestureRecognizer(swipeDown)
let tap = UITapGestureRecognizer(target: self, action: #selector(onViewTapped(sender:)))
tap.delegate = self
viewControlCenter.addGestureRecognizer(tap)
}
}
关于ios - 控制中心 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48740644/
我正在尝试在 iPhone 中创建类似控制中心的 View 。根据我的要求,当用户向上切换时, View 必须位于底部, View 需要从下到上出现,而关闭 View 需要从底部切换。就像控制中心一样
总结 我目前正在尝试为每次播放音频时设置一个应用范围内的默认元数据。目前,只有音频流的 URL 显示在控制中心和锁屏上。我正在尝试自己的自定义值;但是,我无法让它工作。可能值得注意的是,音频是通过 U
我刚从 Android 转为 iOS 新手。我尝试运行模拟器并在其上打开控制中心。当我从底部向上滑动时,我看到它是空的。知道我的模拟器发生了什么事吗? 我试过 iPhoneX 模拟器,结果一样。 最佳
有人能帮我理解融合控制中心时间线上的红色条纹是什么意思吗? 最佳答案 红色条纹表示在处理监控数据时遇到了丢失或重复的拦截器记录。文档描述了这种行为: It’s also possible for me
我只是想知道是否可以使用您自己的模块(假设网络、显示器、打印机等都是模块)扩展 Gnome 3 统一控制面板(也称为系统设置),以及如何扩展。目前还没有太多信息。 谢谢。 最佳答案 在 Gnome 3
我以前从未接触过 PervasiveSql,现在我有一堆 .ddf 和 .Btr 文件。我读到我所要做的就是在控制中心创建一个新数据库并指向包含这些文件的文件夹。 当我这样做并查看数据库时,其中没有任
我正在尝试使用 appium 和以下代码打开控制中心: int halfWidth = driver.manage().window().getSize().width / 2; in
这个问题在这里已经有了答案: check if control center is used (2 个答案) 关闭 6 年前。 我想检查 UIviewController.swift 文件中是否存在
我是一名优秀的程序员,十分优秀!