草庐IT

iphone - 如何在 iOS 应用程序中编辑 PDF 文件?

在我的iPhone/iPad应用程序中,我以PDF格式显示一个人的医疗报告。我已将报告保存在文档目录中并从那里阅读。我希望用户能够在这些PDF上添加或编辑评论,以及能够突出显示PDF中的某些部分。编辑后,应用程序应该能够将PDF保存回文档目录。在iOS应用程序中这可能吗?如果是这样,如何?这是CoreGraphics的任务吗? 最佳答案 直接在iPad/iPhone上编辑PDF是一个相当大的工作,因为标准的API只支持显示它(而且只支持一点点。)如果你想做更多的事情,你需要投入大量的时间来实现通用pdf处理代码。有一个开源库处理这些

iphone - 在 NSLocalizedString() 中使用 "real"键是否安全?是否有保证的后备语言?

我知道很多开发者都是这样做的:他们开始用英语开发他们的应用程序,然后输入NSLoclaizedString(@"Tapthistodothat!",@"Tellingwhattodo...")而不是简单地@"Tapthistodothat!"。然后他们运行genstrings,它通过提取所有这些字符串以某种方式创建一个Localizable.strings文件。凌乱的部分:代码中使用的长文本成为关键。有用。直到有一天你快速进入你的代码并更改英文字符串并忘记本地化并且它作为所有那些Localizable.strings文件的键。所以我倾向于使用不会与字符串混淆的“真实”键。为了进行快速测

iOS - UILabel 更改禁用标签的外观

关于我昨天的问题,我正在使用带有UILabel的View,输出到外部监视器。标签可以在其上设置文本,除非它们被禁用。但是(显然)禁用标签的文本显示为灰色。无论如何要覆盖这种行为?我唯一能想到的另一件事是子类化UILabel并有一个变量将其设置为可编辑,但这会影响序列化吗?谢谢! 最佳答案 如果您想阻止用户与标签交互,可以设置一个名为userInteractionEnabled的属性。 关于iOS-UILabel更改禁用标签的外观,我们在StackOverflow上找到一个类似的问题:

iphone - 为 uitableview 创建自定义删除按钮

我正在开发一个ios应用程序,我的问题是如何更改滑动时的默认按钮以在uitableview上删除。我看到我可以使用titleForDeleteConfirmationButtonForRowAtIndexPath更改文本,但我想完全更改图像。我一直在寻找一种方法,所有关于它的帖子都可能已过时,所以在我继续之前只想与人们确认。我要做的是向单元格本身添加一个手势识别器,以捕捉用户在单个单元格上滑动,然后添加我的自定义按钮并从那里重新排列单元格框架,而忘记苹果默认滑动以完全删除。听起来怎么样? 最佳答案 这里有一个很棒的开源类,可以根据T

iphone - URLForUbiquityContainerIdentifier 是否为 : return nil when network access is not available?

当处于飞行模式或网络访问不可用的任何其他状态时,调用NSFileManager的URLForUbiquityContainerIdentifier:会返回nil吗?对此的后续问题是:如果对URLForUbiquityContainerIdentifier:的调用没有返回nil,而是在网络访问不可用时返回有效的URL,这是一种访问云的方式吗离线基于文档?Apple文档声明如果未配置或未启用iCloud,这将返回nil。它没有提到如果网络访问不可用会发生什么。我会自己测试这个,但据我所知,我必须在实际设备上测试它,而目前我无法在设备上进行测试。谢谢! 最佳答案

iphone - 何时从 Sandbox 切换到生产 StoreKit 服务器?

我最近向iTunes提交了一个包含应用内购买的应用。我应该在什么具体时间从使用沙盒服务器切换到生产服务器?现在?还是审核通过后?我可以随时在我服务器上的php文件中切换。我查看了StoreKit文档,他们并没有真正说明这一点。谢谢! 最佳答案 我在StoreKit上找到了答案FAQ:WhaturlshouldIusetoverifymyreceipt(iOS)?UsethesandboxURLhttps://sandbox.itunes.apple.com/verifyReceiptwhiletestingyourapplicati

iphone - 在 iOS 上,为什么旋转后 View 框架的高度几乎保持不变?

在ViewController.m中,在iPad上,如果我们在点击事件处理程序中打印出View的框架高度:NSLog(@"Heightofmainviewis%f",self.view.frame.size.height);然后在纵向模式下,该值为1004(设备状态行为20像素,因此1024-20=1004),如果设备旋转到横向模式,我预计它约为768或748,但是打印的值实际上是1024。(更新:如果应用程序以横向模式启动,然后没有旋转,它也打印为1024)。为什么会这样,是否有经验法则期望得到748或768的值?(有不止一种方法吗?) 最佳答案

ios - UICollectionView 无法折叠或删除补充 View

我有一个使用流布局的uicollectionview,它有一个补充标题View,这是一个我有时只想显示的View。所以基本上我想要一个按钮,当点击它时,它会从CollectionView中删除补充View,并考虑到标题已经消失,将所有项目重新放置在CollectionView中。这可能吗?我以多种方式反复尝试过。更改引用header大小、更改我对header大小委托(delegate)方法的回答、使布局无效、重新加载数据等等。我错过了什么?我刚刚进行了测试。我认为这与使用UIDynamics有关,UIDynamics中的什么内容会覆盖我对header部分引用大小的委托(delegate

ios - 在 iOS 中为多个设备和不同方向启动屏幕 Storyboard

我的应用程序在两个方向上都支持4英寸以上的所有设备。iPhone-5、5S、5C、6、6S、6+、6S+、SEiPad4、iPadAir、iPadAir2、iPadPro等将Assets目录用于启动屏幕它工作正常,但在iPadPro应用程序中显示标准键盘而不是iPadPro优化键盘,它更大并且不会给用户最好的感觉。按照下面的链接,应用程序应该使用启动Storyboard而不是Assets图像来获得优化的iPadPronative键盘。https://forums.developer.apple.com/thread/26357现在的问题是如何在启动屏幕Storyboard期间支持两个方

ios - 如何从 iPhone 上传视频到服务器?

-(IBAction)uploadToServer:(id)sender{NSString*str1=[[[NSBundlemainBundle]resourcePath]stringByAppendingPathComponent:@"intro.mp4"];NSLog(@"str1=%@",str1);NSString*escapedUrlString=[str1stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];NSLog(@"escapedUrlString=%@",escapedUrlString);