从绿到红的颜色与百分比
我试图创建从绿色到红色的自定义效果取决于百分比值,但我不知道我该怎么做? 有什么想法? 解决方案 如果您只想要线性混合物,那么沿着这些线路应该有效: func mixGreenAndRed(greenAmount: Float) -> UIColor { return UIColor(red: (1.0 - greenAmount), green: greenAmount, blue: 0.0, alpha: 1.0) } 但是,一个人会通过RGB(0.5、0.5、0)融合 - 一种丑陋的橙色 - 因此您可能想这样做,这只会调整红色和绿色之间的色调,穿过黄色,然后让您改变饱和度/亮度: func mixGreenAndRed(greenAmount: Float) -> UIColor { // the hues between red and green go from 0…1/3, so we can just divide percen
2 2023-06-02
编程技术问答社区
针对不同图像方向和长宽比的CollectionView布局?
我想知道如何使用CollectionView显示具有不同尺寸,宽高比和方向的图像?有没有办法在这些图像中找到"匹配". 查看Deviantart iOS应用程序的此屏幕截图: 您可能已经注意到具有相同高度的图像,即使它们具有不同的方向,也可以在同一行中安装在同一行中. 如何通过迅速? 请帮助我. 预先感谢! 解决方案 我知道的唯一一个类似的布局是 nhbalancedflowlayout .它是在Objective-C中内置的,但是您可以查看并编写自己的一个,或者只是使用桥接标头(有关如何使用OBJC + Swift的描述是在这里). 更新: 经过小研究,我发现了另一种很棒的布局-e yjzalbumcollectionViewlayout .我会说,这看起来更好.也内置了Objective-C.
10 2023-06-02
编程技术问答社区
我怎样才能动态地解除Swift类的名称?
我知道Swift-Demangle命令行实用程序.我正在寻找可以让我从Swift本身做到这一点的东西. 当我从迅捷的替补中运行:target modules dump symtab后,我感到很兴奋,但是我不知道该如何致电swift_demangleSimpleClass. 看来有一个@asmname命令可以允许调用私人swift函数,但是我无法使它起作用. 我可能最终为此写了一个基于正则的解析器,但是在Swift框架中调用某些东西似乎有些安全. 解决方案 Swift 5 您可以使用Swift的swift_demangle函数来删除名称,但默认情况下它不会导出,因此您需要首先导入: import Darwin typealias Swift_Demangle = @convention(c) (_ mangledName: UnsafePointer?,
10 2023-06-02
编程技术问答社区
使用iOS8 GM从弹出式窗口获得UIActionSheet
有人在尝试从弹出窗口显示uiactionsheet时收到此消息? 您的应用程序已介绍了uialertControllerStyLeactionsheet样式的UialertController().具有这种样式的UialertController的模态置换风格是UimodalPresentationPopover.您必须通过警报控制器的popoverPresentationController为此弹出案提供位置信息.您必须提供SourceView和soutcerect或BarbuttonItem.如果您在提出警报控制器时尚不清楚此信息,则可以在uipopoverpresentationcontrollerdelegate方法-prepareforpopopoverpresentation中提供. 以前到达GM,我使用了一些解决方法将uiactionsheet转换为uialertController,这很好. 但是,苹果似乎试图解决uiactionsheet问题,但我不想使用我
4 2023-06-02
编程技术问答社区
从iOS共享扩展中打开含有的应用程序
这是我尝试过的尚未工作的方法: 使用OpenUrl尝试打开包含的应用 这是我所想到的,这是行不通的: 使用本地通知提供指向包含应用的链接(从扩展程序创建本地通知) 这是我正在考虑的选项: 使用UIDocumentInteractionController和自定义文件扩展名类型来提供指向我的包含应用程序(仅包含我的应用程序) ) 启动"假" NSURL会话以获取以下功能:在iOS中,如果您的扩展名在完成后台时未运行,则系统将在背景中启动您的包含应用程序并调用应用程序:handle eventsforbackgrockgroundrellsession:pleastion handhandler: App委托法. uidocumentInteractionController已确认在Xcode 6.5中工作,但流程有点不高兴. nsurl的东西也应该有效,但也有点腥.是否有人有其他想法将我的包含应用程序从股票扩展中打开,或者是从股票扩展中与之通信的想法
8 2023-06-02
编程技术问答社区
我什么时候可以使用照片框架和iCloud照片库?
我想为我的用户提供一个照片选择器,该照相机显示所有图像类似于照片应用程序.目前,我可以使用两个框架,旧资产库和新照片库框架.有什么建议在这两个之间如何选择? 文档指出: 在iOS 8.0及以后,使用"照片框架"而不是资产库框架.照片框架为使用用户的照片库提供了更多功能和更好的性能. 但是,正如我的测试所示,在某些情况下,尚未启用用户iCloud照片库,因此我无法通过新框架检索他们的照片.如何检测是否启用了iCloud照片库?如果启用了,旧框架或多或少仍然有效,但似乎并未显示每张照片.它显示哪些照片?我可以继续使用吗?我找不到有关此文件的任何文件. 解决方案 我已经制作了一个具有资产库框架的应用程序,我正在测试另一个带有照片框架的应用程序. 在iPhone上,我尚未启用iCloud照片库,但是使用两个框架,我可以检索所有照片. 另一方面,在我的iPad上,我启用了具有"优化[设备]存储"选项的iCloud照片库.在这种情况下( https://support.a
0 2023-05-25
编程技术问答社区
使用photo framework ios 8将图像保存到特定相册
我刚刚创建了一个带有此代码的新相册: [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^ { //Checks for App Photo Album and creates it if it doesn't exist PHFetchOptions *fetchOptions = [PHFetchOptions new]; fetchOptions.predicate = [NSPredicate predicateWithFormat:@"title == %@", @"ChameleonSensors"]; PHFetchResult *fetchResult = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeAlbum subtype:PHAs
0 2023-05-25
编程技术问答社区
如何使用Photos API在iOS 8.0中检索照片扩展(jpg/png)?
正在尝试使用iOS 8中的新照片API获取照片的文件扩展,但直到现在尚未找到一种方法.在iOS 8.0之前,我将使用AlassetRecentation获取文件扩展名: // Get asset representation from asset ALAssetRepresentation *assetRepresentation = [asset defaultRepresentation]; // Extract file extension from the original file name NSString* fileExt = [[assetRepresentation filename] pathExtension]; 现在有什么方法可以获取照片的文件扩展名? PS:我正在使用新照片API,因为我需要在照片应用程序中访问所有照片,而AslesetSlebibrary只能访问"最近添加"照片. 解决方案 我已经知道了. [[PHImageManag
0 2023-05-25
编程技术问答社区
如何使用AlassetLibrary枚举iOS 8上的所有照片
iOS 8通过从枚举API的API中删除"相机滚动",打破了许多应用程序.我知道我可以使用新照片框架获取所有照片.但是我的应用程序具有很多代码,具体取决于相关的类别,我需要保留iOS 7的支持.有没有办法在iOS 8上使用Alassetslibary枚举所有照片,而无需首先列举资产组? 解决方案 Apple刚刚发布了8.0.1,并将其列为随附的修复程序.可能只是最好等待. 从8.0.1发行说明: Fixes an issue that prevented some apps from accessing photos from the Photo Library
0 2023-05-25
编程技术问答社区
用PHAsset获取图片时避免重复
在iOS 8上,我想将所有图片存储在设备上.我的问题是我确实得到了它们,但是有些在场不止一次.所有图片的PHAsset属性(隐藏,MediaSubtypes等)都是相同的,因此我不能排除PHAssetMediaSubtypePhotoHDR子类型.我发现的唯一方法是没有在同一日期添加多个图片,但这是一个问题时的问题. 有人知道为什么我会得到这些重复项,以及我能做些什么来避免它们? 这就是我获得图片的方式: PHFetchOptions *fetchOptions = [PHFetchOptions new]; fetchOptions.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"creationDate" ascending:YES],]; PHFetchResult *phAssets = [PHAsset fetchAssetsWithMediaType:PHAs
0 2023-05-25
编程技术问答社区
编辑拟语时,如何保留原始的照片元数据?
我正在通过Photokit编辑照片,但我发现这并不能保留原始照片的元数据.即使苹果应用棕褐色或镀铬过滤器时,也会发生这种情况.我的问题是,您如何确保保留所有原始照片元数据? 我发现了如何获得原始图像的元数据,并且我能够将该元数据保存到我创建的最终CIImage中,但是当编辑进行时,它仍然被剥离.我必须将CIImage转换为CGImage到UIImage到NSData的方式,或者我如何将其写入磁盘. . asset.requestContentEditingInputWithOptions(options) { (input: PHContentEditingInput!, _) -> Void in //Get full image let url = input.fullSizeImageURL let orientation = self.input.fullSizeImageOrientation var inputImage = CIIm
0 2023-05-25
编程技术问答社区
解析iOS SDK,无法从用户表中获取所有字段
在我的应用程序中,我将信息存储在解析的其他字段_user表的其他字段,例如用户等级和家庭城市/州.我只需运行PFUSER查询命令就可以从表中读取所有数据. . PFQuery *userQuery = [PFUser query]; [userQuery whereKey:PARSE_CLASS_USER_USERNAME equalTo:currentUser.username]; [userQuery findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) { if (!error) { PFObject *user = [objects firstObject]; _userObject = user; [[DEPostManager sharedManager] setGoingPost:user[@"eventsGoingTo"
2 2023-05-25
编程技术问答社区
在iOS 8中呈现相机权限对话框
当我的应用程序尝试在iOS 8上首次访问相机时,向用户提供了相机权限对话框,就像麦克风访问iOS 7中的麦克风访问. 在iOS 7中,可以事先调用麦克风权限对话框,看看是否授予了许可(请参阅例如,这个问题).是否有类似的方法来调用iOS 8中的相机权限对话框?可以将对话框合并以获得麦克风和相机访问权限吗? 解决方案 这是我们最终使用的方法: if ([AVCaptureDevice respondsToSelector:@selector(requestAccessForMediaType: completionHandler:)]) { [AVCaptureDevice requestAccessForMediaType:AVMediaTypeVideo completionHandler:^(BOOL granted) { // Will get here on both iOS 7 & 8 even though camera permi
2 2023-05-25
编程技术问答社区
SKShader性能下降
我需要使用SpriteKit实现自定义着色器节点. 在模拟器中,一切都可以.在设备(iPad 3rd Gen)上的着色器动画仅在第一个〜30秒的情况下平滑,此后着色器的FP逐渐掉落,直到看起来像幻灯片(1 fps或更少) 值得注意的是,SpriteKit显示60 fps,Xcode也是如此. CPU忙于75%,但着色器本身显示〜1fps. 我只有第三代iPad,目前没有机会在其他设备上进行测试 着色器代码来自WWDC会话,但是问题是我尝试过的任何动画着色器. . 着色器本身: void main(void) { float currTime = u_time; vec2 uv = v_tex_coord; vec2 circleCenter = vec2(0.5, 0.5); vec3 circleColor = vec3(0.8, 0.5, 0.7); vec3 posColor = vec3(uv, 0.5+0.5 *
4 2023-05-24
编程技术问答社区
UIWebView在iOS8中显示空白屏幕
我有一个应用程序可以下载PDF并将其存储在iPhone中.它在iOS 7(我目前在iOS 8上运行)中的功能非常完美,并且在iOS 8中运行该应用程序时,网络浏览量只是空白.我不知道怎么了. #import "ISJMMisalViewController.h" #import "SWRevealViewController.h" @implementation ISJMMisalViewController @synthesize activityImageView; - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:YES]; [self.webView addSubview:activityImageView]; [activityImageView startAnimating]; dispatch_async(dispatch_get_global_queue
0 2023-05-22
编程技术问答社区
Quicklook/QLPreviewController在ios 8上显示空白页面,而不是pdf,但在ios 7上运行良好
我正在尝试在qlpreviewController中预览PDF文件,并使用以下代码.它在 ios7 以及 ios8 上的其他类型的文件(JPG/PNG)上都可以正常工作,但是当我尝试打开 pdf 时,它会显示空白页面在 ios8 上的内容.奇怪的是,它仍然在标题视图中显示PDF的名称. 代码: QLPreviewController *previewer = [[QLPreviewController alloc] init]; previewer.dataSource = self; previewer.currentPreviewItemIndex = 0; [self presentViewController:previewer animated:NO completion:nil]; 和qlpreviewControllerDatasource方法: - (NSInteger)numberOfPreviewItemsInPreviewController:
0 2023-05-22
编程技术问答社区
如何通过引用传递数组而不使用函数? 迅速
我有这个课: class MainView:UIView{ var categories:[Category]! } 我想设置类别ARG,但是我需要通过参考而不是价值传递它.因为它更有效,更好. 所以如果我这样做: let mainView = MainView() mainView.categories = categoriesData. 然后按值传递. 如果我需要通过参考将其传递,我可以通过在mainview() 中使用函数来做到这一点 class MainView:UIView{ var categories:[Category]! fun setCategories(inout categories: Int){ self.categories = categories; } } 但是,如果我不想使用设置功能,我该如何通过参考将其传递. 例如 mainView.cat
0 2023-05-20
编程技术问答社区
iOS应用扩展的PFUser currentUser设置为nil
我有一个支持解析的iOS 8应用程序,我正在尝试启用共享扩展.我已经完成了的,它在 https://www .新实例而不是我现有的安装.应用程序扩展与我的应用程序通信似乎存在问题. 在解析文档中清楚地指出: 如果您使用Parse SDK有现有应用,则当用户升级到 您最新的应用程序版本(启用了数据共享),Parse SDK 将自动移动主应用的本地持久数据(本地 该应用 共享容器的沙盒容器. 我已经启用了具有相同ID的键链共享和应用程序组,并添加了适当的代码.为什么我仍然在扩展中作为当前用户nil?我正在使用最新的解析iOS SDK(1.7.4). 解决方案 找到了问题: 我没有在应用程序扩展程序中启用本地数据存储.必须在应用程序本身和的应用程序扩展程序中启用数据存储.添加[Parse enableLocalDatastore];在初始化解析之前和数据共享代码(enableDataSharingWithApplicationGroupIdentifier:co
4 2023-05-20
编程技术问答社区
Swift 1.2和Parse。检索图片以填充PFQueryCollectionViewController的问题
我目前正在处理在某些位置显示图像的应用程序.问题是: 当用户单击MAPVIEW中的位置时,它将转到一个空收集视图.如果用户可以刷新,则旋转器处于活动状态,但图像不会加载.但是,如果用户返回MAPVIEW,然后再次单击位置,则将图像加载在集合视图中.当然,当用户首次转到Collection视图时,我们正在尝试将图像加载. 我认为可能是一个小问题,但是经过数小时尝试来自不同来源的不同建议,我们根本无法使其正常工作. 任何帮助都将不胜感激. 谢谢. 这是我的PFQueryCollectionViewController的代码: import UIKit class PhotoGridCollectionViewController: PFQueryCollectionViewController { var savedPics: [UIImage]? func loadImages() -> PFQuery { var query =
4 2023-05-20
编程技术问答社区
使用Swift分析框架
有人尝试使用Swift使用Parse框架吗?只要添加桥梁文件,您就可以使用Swift和Objective-C代码. 这是我的查询..从解析返回的"对象"阵列具有我的所有数据,但是在将'结果'数组设置为"对象"阵列之前,该方法正在返回功能.也许解析需要收到更新以支持Swift,还是我可能在某个地方犯了一个错误?谢谢 class func fetchAllCategories() -> NSArray { var results : NSArray = NSArray() var query : PFQuery = PFQuery(className: "Category") query.findObjectsInBackgroundWithBlock({(NSArray objects, NSError error) in if (error != nil) { N
14 2023-05-20
编程技术问答社区