小编LOP*_*uke的帖子

titleTextAttributes iOS 7中的UIAppearance字体

我正在使用UIAppearance将字体应用于UINavigationBar和UIBarButtonItem,我遇到了问题.我运行了这段代码:

[[UIBarButtonItem appearanceWhenContainedIn:[UIToolbar class], nil] 
setTitleTextAttributes:
@{NSFontAttributeName : [UIFont fontWithName:@"My_Font" size:17.0]} 
forState:UIControlStateNormal];

NSLog(@"%@", [[UIBarButtonItem appearanceWhenContainedIn:
[UIToolbar class], nil] titleTextAttributesForState:UIControlStateNormal]);
Run Code Online (Sandbox Code Playgroud)

并且iOS 7上的日志结果是:

(null)
Run Code Online (Sandbox Code Playgroud)

iOS 6中的结果是:

{
    NSFont = "<UICFFont: 0x1d897a80> font-family: \"My_Font\"; font-weight: normal; font-style: normal; font-size: 17px";
}
Run Code Online (Sandbox Code Playgroud)

我在iOS 7文档中找不到任何表明这不起作用的内容,有其他人有这个问题吗?

编辑1

我实际上已经解决了[UINavigationBar appearance]这个问题,我将点大小设置为0,以便将字体设置为默认的navbar/barButtonItem大小,如NSString UIKit Additions Reference中所述,但这显然不再适用于iOS 7.相反,将磅值设置为0将返回系统字体.

我仍然无法设置titleTextAttributes

[UIBarButtonItem appearanceWhenContaintedIn:[UIToolbar class], nil]]

uikit uibarbuttonitem ios uiappearance ios7

30
推荐指数
6
解决办法
5万
查看次数

"不能从非公开课继承"迅捷

从Xcode 8 beta 6开始,我现在得到编译错误"无法从其定义模块之外的非开放类(Class)继承"

我继承的类是一个单独的Swift框架的一部分,但我的项目是为Xcode 8 beta 5编译的.我需要更改什么才能使我的项目再次编译?

swift xcode8-beta6

26
推荐指数
2
解决办法
9772
查看次数

iPhone X如何处理View Controller inputAccessoryView?

我有一个消息传递应用程序,它具有全屏表格视图底部的文本字段的典型UI设计.我将该文本字段设置为视图控制器inputAccessoryView并调用ViewController.becomeFirstResponder()以使字段显示在屏幕底部.

我知道这是Apple推荐的实现这种UI结构的方法,它在"经典"设备上运行得很好但是当我在iPhone X模拟器上测试时,我注意到使用这种方法,文本字段不尊重新的"安全区域" .文本字段显示在主屏幕指示器下方屏幕的最底部.

我查看了HIG文档,但没有找到任何关于inputAccessoryView视图控制器的有用信息.

这很难,因为使用这种方法我实际上并没有直接控制任何约束,我只是设置inputAccessoryView并让视图控制器从那里处理UI.所以我不能仅仅把这个领域限制在新的安全区域.

有没有人在这方面找到了很好的文档,或者知道在iPhone X上运行良好的替代方法?

在此输入图像描述

iphone ios inputaccessoryview iphone-x

20
推荐指数
3
解决办法
1万
查看次数

AVPlayer 在 tvOS 13.4 上出现 HLS 直播流 URL 失败(适用于 tvOS 13.3)

我有一个 Apple TV 应用程序,可以从 Windows 媒体服务播放 HLS 直播流。这些视频在 tvOS 13.3 上完美播放,但自从在 tvOS 13.4 上进行测试后,当我尝试开始流式传输视频时,我遇到了一个神秘的错误。我使用的 URL 格式是:

https://myhost.streaming.mediaservices.windows.net/{uuid}/{uuid}.ism/manifest(format=m3u8-aapl, audio-only=false)

这是当我尝试使用该 url 加载 AVPlayer 时运行 13.4 的 tvOS 设备的错误输出:

Error Domain=AVFoundationErrorDomain Code=-11800 "The operation could not be completed" UserInfo={NSLocalizedFailureReason=An unknown error occurred (-12746), NSLocalizedDescription=The operation could not be completed, NSUnderlyingError=0x6000000c8360 {Error Domain=NSOSStatusErrorDomain Code=-12746 "(null)"}}

我将-12746错误跟踪到此文档,但同样没有太多细节。我还检查了errorLog()播放器项目的 ,但那里什么也没有。

另一件有趣的事情是,当我按照 Apple 的创建基本视频播放器示例时,我可以重现此错误。只需复制并粘贴他们的测试网址,它在 tvOS 13.3 及更低版本上运行良好,但在 tvOS 13.4 上失败并出现上述错误。

有其他人在 tvOS 13.4 上看到此错误吗?如果是,您找到了解决方法吗?

谢谢你的时间。

windows http-live-streaming avplayer avplayeritem tvos

2
推荐指数
1
解决办法
1172
查看次数