可以使用哪些代码来检测用户何时与应用程序交互以及用户何时未与应用程序交互?
目前,我有一个ViewController具有UIView由覆盖触摸接收触摸,也可接收平移手势和轻敲姿势.此问题的解决方案需要与当前手势分开或者位于这些手势之上.
是否有一个手势识别器位于其他所有可以告诉我的应用程序接收到手势和没有收到手势时?
当应用程序处于活动状态时,是否有办法监控应用程序是否正在接收触摸,何时不是,并根据需要调用函数,例如:
func appActive(){
print("App received input from a touch, tap, swipe, long press etc.")
}
func appInactive(){
print("App stopped receiving any input.")
}
Run Code Online (Sandbox Code Playgroud)
谢谢.
问题:
我有一个看似简单的问题,但我就是无法弄清楚。
我在 Xcode 中有一个故事板,其中三个故事UIView板彼此重叠;一红UIView一蓝UIView一绿UIView。
当所有人UIView都有一个alphaof时,我得到图像 A1.0中所示的结果。
当所有人UIView都有一个alphaof时0.5,我得到的结果如图 B所示。
问题:
如何使每个图像
UIView看起来像具有差异或加色混合模式的图像 C ?我怎样才能在每次
UIView移动时实现这一目标?(类似于 Siri 挥手动画中看到的效果。)
图片:
\n\n\n问题
\n\n必须对下面的代码进行哪些更改才能确保 Messenger 能够很好地处理
\nUIActivityViewController并共享图像和文本,或者至少共享图像?
背景
\n\n我用来UIActivityViewController分享我的应用程序中的文本和图像,并将它们发送到电子邮件、消息和其他共享应用程序。UIActivityViewController很棒,并且可以以简单且标准的方式与大多数应用程序\xe2\x80\xa6 配合使用,但是,我\xe2\x80\x99m 与 Messenger (Facebook Messenger) 存在问题,它不想\xe2\x80\x99 合作。
在下面的代码中,我点击 aUIButton来拍摄屏幕的快照图像,将其转换为 .png,然后将准备好的图像 ( imageShare) 连同我准备的文本 ( textShare) 一起发送到UIActivityViewController. 这个简单的方法允许我的应用程序成功共享到电子邮件、消息和除 Messenger 之外的许多其他共享应用程序。
(旁注,Facebook 只能分享准备好的图像 ( imageShare),但不能分享文本。)
问题
\n\nUIActivityViewController这些是尝试与 Messenger共享时出现的问题:
分享时activityItems: [textShare, imageShare]
分享时activityItems: [textShare]
UIActivityViewController.optimization ios uiactivityviewcontroller facebook-messenger swift
这是一个具有专业知识的专家的问题。
可以PNG与UIActivityViewController许多共享平台成功共享高质量的无损图像,但每次都失败的 Facebook Messenger 除外。提供的错误是“Couldn’t Load Content”。
既UIImagePNGRepresentation NSData和AnyObject失败中的Facebook Messenger中,UIImage成功然而股BUT的输出图象似乎是一个JPG和低质量和有损耗的。
题:
这里发生了什么以及如何纠正——我如何成功地与UIActivityViewControllerFacebook Messenger共享高质量的无损 PNG 图像?
这是 Facebook Messenger、Xcode 或UIActivityViewController?
NSData和AnyObject(和 UIImage)有替代品吗?
代码:
var myImage: UIImage!
var myImagePNG: NSData!
//var myImagePNG: AnyObject!
func sharePNG() { …
myImagePNG = UIImagePNGRepresentation(myImage)!
let activity = UIActivityViewController(activityItems: [myImagePNG], applicationActivities: nil)
self.presentViewController(activity, animated: true, completion: nil)
}
Run Code Online (Sandbox Code Playgroud)
图片:
我了解 iOS 中的相机在拍摄视频和照片时会自动连续调整曝光。
问题:
如何关闭相机的自动曝光?
在 Swift 代码中,如何将相机的曝光设置为“零”,以便曝光对周围环境完全中性而不补偿光线?
我正在使用 Xcode Swift 1.1 开发一个应用程序,并使用 iOS 7.1 和 iOS 8.1 模拟器对其进行测试。
\n\n该应用程序允许用户访问他们的照片库,但在此之前,iOS 会显示隐私警报消息标题,以英语请求用户的许可 - \xe2\x80\x9c应用程序名称\xe2\x80\x9d 想要访问您的照片。(旁注:调用 PHAsset 和/或 ALAssetsLibrary 时会触发警报。)
\n\n我的应用程序将提供几种不同语言的版本,例如中文。但是,每当我尝试本地化或测试不同的语言设置时,上述隐私警报消息始终以英语显示。我希望系统隐私警报消息以用户设备上设置的语言显示。
\n\n我\xe2\x80\x99在Xcode中尝试了许多不同的位置设置和本地化语言,在模拟器中没有任何区别。
\n\n我是否应该期望(或放心)在真实设备上设置不同的位置会让 iOS 自动为所有系统生成的隐私警报消息显示正确的语言?
\n\n我在本地化系统隐私警报消息时缺少什么?
\n\n(注意:我还无法在真实设备上进行测试,并且在 Info.plist 中设置“隐私 - 照片库使用说明\xe2\x80\x9d 键不会更改隐私警报消息标题,但会设置一个可选说明”而是警报。)
\n下面的代码通过覆盖触摸来绘制线条,但是在绘制时仍然存在伪像,如下图所示。
当在屏幕上进行锯齿形绘制时改变方向时,有时线会变成平坦的直角,而不是保持圆形。当在小圆圈上现场绘制时,也会出现伪影,当手指离开屏幕时,绘制点会闪烁半个圆圈,有时会留下半个圆圈和部分圆圈残留物。
伪影是断断续续的,不是完全一致或可预测的,这使得很难在代码中找到问题。它同时存在于模拟器和iOS7-iOS9的设备中。
包含两个绘制点和线的视频屏幕截图以及Xcode项目的zip文件以名为Archive.zip(23MB)https://www.dropbox.com/s/hm39rdiuk0mf578/Archive.zip?dl的文件上传到DropBox。= 0
问题:
1-在代码中,造成此点/半圆伪像的原因是什么?如何纠正?
class SmoothCurvedLinesView: UIView {
var strokeColor = UIColor.blueColor()
var lineWidth: CGFloat = 20
var snapshotImage: UIImage?
private var path: UIBezierPath?
private var temporaryPath: UIBezierPath?
private var points = [CGPoint]()
private var totalPointCount = 0
override func drawRect(rect: CGRect) {
snapshotImage?.drawInRect(rect)
strokeColor.setStroke()
path?.stroke()
temporaryPath?.stroke()
}
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
let touch: AnyObject? = touches.first
points = [touch!.locationInView(self)]
totalPointCount = totalPointCount + 1
}
override func touchesMoved(touches: Set<UITouch>, …Run Code Online (Sandbox Code Playgroud) 我的故事板上有 3 个视图,viewA, viewB, viewC。
我试图屏幕捕获只有两个视图,因为它们出现在屏幕上的当前位置,viewB并且viewC.
问题是,当我渲染它们时,捕获的结果图像显示viewB并且viewC在不正确的位置,视图的位置改变移动左上角 (0, 0),见图像。
如何更正下面的代码,以便我可以使用下面的实现捕获视图viewB并viewC准确地将它们定位在视图上renderInContext?
UIGraphicsBeginImageContextWithOptions(self.view.frame.size, false, 0)
self.viewB.layer.renderInContext(UIGraphicsGetCurrentContext()!)
self.viewC.layer.renderInContext(UIGraphicsGetCurrentContext()!)
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
Run Code Online (Sandbox Code Playgroud)
这是一个超级基本的问题,但是,我似乎无法在Swift中找到答案.
题:
如何获取Swift 2和Swift 3中数字的整数部分和小数部分(分别位于小数点的左侧和右侧)?例如,对于数字1234.56789 -
如何获得整数部分1234 .56789?
我如何获得小数部分1234. 56789?
目的:
如何制作我UIView想要扩展以填满整个屏幕的动画。需要UIView在动画时以平滑、均匀和平衡的方式扩展。
我在屏幕上放置了一个红色方块,一开始很小,然后扩展到适合屏幕。(图 1。)
let subview = UIView()
subview.backgroundColor = .red
subview.frame = CGRect(x: 60, y: 200, width: 50, height: 50)
self.view.addSubview(subview)
Run Code Online (Sandbox Code Playgroud)
问题:
在 Swift 2 和 Swift 3 中,使用
animateWithDuration,如何使红色方块UIView以平衡且均匀的方式向各个方向扩展以填充整个屏幕?Run Code Online (Sandbox Code Playgroud)UIView.animateWithDuration(1.0, delay: 0, options: nil, animations: { ????? }, completion: nil)
图片1:
swift ×10
ios ×9
optimization ×4
uiview ×3
xcode ×2
animation ×1
camera ×1
colors ×1
drawing ×1
graphics ×1
localization ×1
math ×1
messenger ×1
performance ×1
uialertview ×1
uibezierpath ×1