我正在使用Xcode 6,
1)首先,我正在创建一个动态库(CoreLibrary).该库包含RequestPoster.h文件.
2)然后我创建了一个Cocoa Touch Framework并添加了这个动态库(CoreLibrary).
3)然后在我的项目中添加此框架,它在RequestPoster.h文件(CoreLibrary)中给出错误.
错误:在框架模块类中包含非模块化头:
ifaddrs.h,arpa/inet.h,sys/types.h>
在项目中找不到这些文件.
我想在不使用UIWebView的情况下在iPhone中渲染SVG图像.我怎样才能做到这一点?
我检查了这两个链接:
http://www.splashdust.net/2010/09/svgquartzrenderer-a-basic-iphone-sdk-compatible-svg-renderer/ https://github.com/splashdust/SVGQuartzRenderer
Github上面的项目显示了102个错误,显示UIKit框架丢失,其他人也无法添加该框架.我认为该应用程序适用于MacOS而不适用于iOS.
http://maniacdev.com/2011/05/open-source-library-to-render-svg-graphics-as-core-animation-layers/
https://github.com/mattrajca/SVGKit
上面url上的项目显示了构建项目时的错误.
Target指定产品类型'com.apple.product-type.framework',但'iPhoneOS'平台没有这种产品类型.
有谁知道如何解决这个问题?或者我可以使用的其他有用的工作示例?我想在iPhone上渲染SVG.
更新:我通过阅读说明工作SVGKit.但当我试图让我从Github(https://github.com/splashdust/SVGQuartzRenderer )下载的项目工作时,我遇到以下错误:
1)UIKit/UIKit.h:没有这样的文件或目录(我无法使用添加现有框架添加它)
2)Libxml/tree.h:没有这样的文件或目录
3)Expected specifier-qualifier-listbefore'xmlParserCtxtPtr' .有谁知道如何解决它并使其工作?
我遇到了UIWebView和运行HTML 5游戏的问题(另一个开发人员正在研究).我们尝试了两种不同的选择,但都不是最佳选择.
选项1:他使用"画布绘制"渲染HTML 5游戏.当他这样做时,没有任何事情崩溃,但是在iOS 9中,当我们从后台返回应用程序时,Web View会加载回来,但游戏的移动速度比正常情况慢得多(问题不在iOS 7.1及更高版本上) .慢得多,我说的是动画并没有像我们第一次加载游戏时那样移动速度.关于这个问题的奇怪之处在于,即使用户打开了另一个HTML 5游戏(我们正在添加多个游戏),该游戏的动画也会变慢.当UIApplicationWillResignActiveNotification发布时,我尝试解除Web视图控制器.当我以这种方式设置游戏时,只有当应用程序处于4秒内时才会出现缓慢(这很奇怪).
选项2:他用"WebGL"渲染游戏.当他以这种方式呈现时,应用程序在应用程序在iOS 8.0及更高版本上进行后台运行时崩溃.我对崩溃的研究是iOS无法在后台绘制OpenGL ES.我假设WebGL命令正在运行与OpenGL ES相似的命令,因此崩溃.在UIApplicationWillResignActiveNotification上关闭Web视图控制器仍会导致崩溃.
有没有其他人处理过这种情况?
如何在iOS 7 SDK中获得CGSize价值NSString,只想转换下面的代码行sizeWithAttributes.
CGSize size = [text sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:NSLineBreakByWordWrapping];
Run Code Online (Sandbox Code Playgroud) 我刚刚将我的应用程序切换到ARC.由于Xcode提供的重构工具,转换取得了部分成功.一部分不起作用是一个奇怪的错误.
我使用方法swizzling(method_exchangeImplementations),这样它就不会调用UIView的initWithFrame,而是调用myInitWithFrame代码.重构过程在myInitWithFrame的方法声明中引发了一个错误,所以我在声明方法后添加了__ 属性 __((objc_method_family(init))).现在这一切都适用于iOS 6.0及以上版本,但在iOS 5.0(我想支持的最低iOS)上它不起作用.我得到一个EXC_BAD_ACCESS(代码= 1,地址= 0X28).每次运行时都会出现完全相同的内存地址.
我有一个调用它的UIWebView:
[[UIWebView alloc] initWithFrame:webViewFrame];
Run Code Online (Sandbox Code Playgroud)
在myInitWithFrame进行初始化之后,它返回self,然后崩溃.在线程跟踪中,它表示它在[UIWebView retain]方法的苹果代码中崩溃(方法显示为灰色),如下所示.
Thread 1, Queue : com.apple.main-thread
#0 0x3515a7d2 in -[UIWebView retain] ()
#1 0x316ddef4 in objc_retain ()
#2 0x0011528c in -[UIView(style) myInitWithFrame:]
Run Code Online (Sandbox Code Playgroud)
很抱歉,线程跟踪格式不是很好,我没有足够的代表来发布图像.
是否有任何理由为什么相同的代码适用于iOS 6.0,而不是iOS 5.0?
我有一个带有自定义类的iPhone应用程序,我创建Detail的子类UIViewController.
我需要创建一个子类Detail,我想调用它ActivityDetail.所以我在ActivityDetail.h文件中写了以下内容:
#import <UIKit/UIKit.h>
#import "Detail.h"
@interface ActivityDetail : Detail {
}
@end
Run Code Online (Sandbox Code Playgroud)
问题是我收到编译器错误告诉我这个:
错误:无法找到'Detail'的接口声明,'ActivityDetail'的超类
奇怪的是:我可以将超类更改Detail为UIView(例如),编译得到很多错误(显然),然后Detail再次更改超类,一切正常!但是,如果我随后改变了Detail类,那么问题从一开始就会回来......
我怎么解决这个问题?
objective-c ×3
ios ×2
iphone ×2
uiwebview ×2
cgsize ×1
cocoa-touch ×1
html5 ×1
image ×1
ios7 ×1
nsstring ×1
subclassing ×1
svg ×1
swizzling ×1
uiimageview ×1
webgl ×1
xcode ×1