作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用Xamarin.iOS封装一个Objective-C库,用于通过扩展坞连接器连接到iPod和iPhone的附件。在发现我缺少测试应用程序的Info.plist中的UISupportedExternalAccessoryProtocols下的值之前,我浪费了大量时间试图使附件在测试应用程序中工作。
我想防止其他人在使用我的包装器库时遇到相同的问题。由于这是一个库,所以我的项目中没有Info.plist,对吗?因此,我想枚举调用方具有的UISupportedExternalAccessoryProtocols值,以便向开发人员提供易于阅读的消息,告知他们缺少值。有没有办法在运行时执行此操作?
谢谢!
最佳答案
这两种方法都可以访问Info.plist
中的值:
var protocolArray = (NSArray)NSBundle.MainBundle.InfoDictionary ["UISupportedExternalAccessoryProtocols"];
var protocolArray = (NSArray)NSBundle.MainBundle.ObjectForInfoDictionary ("UISupportedExternalAccessoryProtocols");
for (nuint i = 0; i < protocolArray.Count; i++) {
Console.Write (protocolArray.GetItem<NSString> (i).ToString ());
}
关于ios - 在运行时枚举UISupportedExternalAccessoryProtocols,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36875623/
我尝试从 API 解析 JSON 数据。有些键返回多种类型或有时不存在。只要键(值)在这里,一切正常。但即使我在我的结构中将其声明为可选,如果 key 不存在,也会抛出错误。错误是从枚举 MyValu
我是一名优秀的程序员,十分优秀!