我收到下面的错误,这没有任何意义.
*由于未捕获的异常'NSRangeException'终止应用程序,原因:'* - [NSMutableArray removeObjectsInRange:]:范围{11,15}超出边界[0 .. 15]'
我在这做错了什么?我在数组的范围内.删除数组中的最后一个对象会导致问题吗?
对于那些质疑我的理智/浪费时间/能力/动机的人来说,这件事是"基础与勺子"项目的一个端口,现在因为是一个全C的iOS应用程序而臭名昭着.
所以,我有交流文件铆足了劲去,要在主类的全部-C的MAC-应用的背后,但是,限制因素是阻止正在启动的应用程序的组合.就目前而言,该项目只是一个main.m和一个名为AppDelegate.c的类,所以我输入了"AppDelegate"作为info.plist中主要类的名称,令我完全惊讶的是,打印的日志:
无法找到类:AppDelegate,退出
这将iOS中很好地工作,因为主函数接受委托类的名称,并自动处理它,但NSApplicationMain()函数没有这样的说法.
现在,我知道这源于@interface/@implementationC 中没有指令的事实,而这正是操作系统似乎正在寻找的,所以我编写了一个简单的NSApplication子类并将其作为主要类提供给plist,它完美地启动了好.我的问题是,怎样才能将ac文件设置为mac应用程序中的主要类并使其正确启动?
编辑:解决了!该文件可能是.m(框架错误,由于某种原因),但类对的分配足以滑倒.您可以在此处下载基于C的Mac App的源代码.快乐挖!
代码已被编写,签名,密封和盖章,但我需要的只是解决plist中NSPrincipalClass要求的方法.
我有一个WebView显示一些经常更新的内容.我想在我的UI中显示一个页面计数器,它会告诉用户如果要打印它们,Web视图会有多少页面.
我试过做:
NSRange r = NSMakeRange(0, 0);
BOOL knows = [[[[webView mainFrame] frameView] documentView] knowsPageRange: &r];
Run Code Online (Sandbox Code Playgroud)
给出knows = YES但r.length总是等于1.
我怎样才能获得这些信息?(如果可能,最好以高效的方式).
我试图在我的Swift类中使用NSObject(NSKeyValueObserving),但我遇到了类型问题.Xcode抱怨它不理解以下代码中'context'参数的CMutableVoidPointer类型:
override func observeValueForKeyPath(keyPath: String!, ofObject object: AnyObject!, change: NSDictionary!, context: CMutableVoidPointer)
Run Code Online (Sandbox Code Playgroud)
我使用CMutableVoidPointer,因为Objective-C定义将'context'参数键入为void*.
我在编译时遇到的确切错误是:"使用未声明的类型'CMutableVoidPointer'".
我正在使用Xcode Beta 3.
任何帮助,将不胜感激.
内置于UIWebView和QLPreviewController中的功能是突出显示文本并向用户呈现某种上下文菜单.虽然呈现菜单是微不足道的部分,但确定PDF的lint的边界影响超出了我的范围.Core Graphics中是否有一些API可以分析这些范围的PDF?
我调试了一个简单的swift应用程序,它通常可以在模拟器中运行,但是在真正的机器上立即运行崩溃.
系统版本,ios 8 xcode版本,6.0.1
崩溃日志
dyld的:库未加载:/private/var/mobile/Containers/Bundle/Application/002E2F03-EE10-433B-B95F-AE3760E777DA/sMdp.app/sMdp原因::@ rpath中/从libswiftCore.dylib引用没有发现合适的图像.确实发现:/private/var/mobile/Containers/Bundle/Application/002E2F03-EE10-433B-B95F-AE3760E777DA/sMdp.app/Frameworks/libswiftCore.dylib:在地址MMAP()错误1 = 0x100104000,大小= 0x00194000段= __ TEXT在段::地图()映射/private/var/mobile/Containers/Bundle/Application/002E2F03-EE10-433B-B95F-AE3760E777DA/sMdp.app/Frameworks/libswiftCore.dylib
已解决(感谢Regexident)
我有一个应用程序将PDF的文件路径传递给自定义-(id)initinit方法.它被添加到表中,当它被选中时,它会为不存在的文件调用else语句:
- (void) gridView:(AQGridView *)gridView didSelectItemAtIndex:(NSUInteger)index {
NSLog (@"Selected theArgument=%d\n", index);
UIViewController *viewController = [[[UIViewController alloc]init]autorelease];
{
//if file is built-in, read from the bundle
if (index <= 3)
{
// first section is our build-in documents
NSString *fileURLs = [_documentIconsURLs objectAtIndex:index];
NSLog(@"file url -%@", fileURLs);
viewController = [[[xSheetMusicViewController alloc]initWithContentURL:fileURLs]autorelease];
}
//if file is external, read from URL
else
{
// second section is the contents of the Documents folder
NSString *fileURL = [_documentIconsURLs objectAtIndex:index];
NSLog(@"file url …Run Code Online (Sandbox Code Playgroud) 我正在使用可访问性API来检测我当前的连接,但我只能区分WIFI和3G.
我得到以下标志:
LTE: kSCNetworkReachabilityFlagsIsLocalAddress|kSCNetworkReachabilityFlagsIsWWAN|kSCNetworkReachabilityFlagsTransientConnection|kSCNetworkReachabilityFlagsReachable
无线上网: kSCNetworkReachabilityFlagsIsDirect|kSCNetworkReachabilityFlagsReachable
问题是LTE返回与3G连接相同的标志.有没有办法确定用户目前是否有LTE或3G?
我想知道Xcode中这些架构之间的区别,因为我需要知道我如何理解库可以正确编译iOS模拟器以及iPhone 5,iPhone 4s和iPhone 4.或者只是其中之一.
我的目标是尝试像脚本一样运行我的Swift程序.如果整个程序是自包含的,你可以运行它:
% xcrun swift hello.swift
Run Code Online (Sandbox Code Playgroud)
hello.swift在哪里
import Cocoa
println("hello")
Run Code Online (Sandbox Code Playgroud)
但是,我想超越一步,包括swift模块,我可以导入其他类,函数等.
所以我们假设我们想要在GoodClass.swift中使用一个非常好的类
public class GoodClass {
public init() {}
public func sayHello() {
println("hello")
}
}
Run Code Online (Sandbox Code Playgroud)
我现在想把这个好东西导入我的hello.swift:
import Cocoa
import GoodClass
let myGoodClass = GoodClass()
myGoodClass.sayHello()
Run Code Online (Sandbox Code Playgroud)
我首先通过运行以下命令生成.o,lib <>.a,.swiftmodule:
% xcrun swiftc -emit-library -emit-object GoodClass.swift -sdk $(xcrun --show-sdk-path --sdk macosx) -module-name GoodClass
% ar rcs libGoodClass.a GoodClass.o
% xcrun swiftc -emit-module GoodClass.swift -sdk $(xcrun --show-sdk-path --sdk macosx) -module-name GoodClass
Run Code Online (Sandbox Code Playgroud)
最后,我准备运行我的hello.swift(好像它是一个脚本):
% xcrun swift -I "./" -L "./" -lGoodClass -sdk $(xcrun --show-sdk-path --sdk …Run Code Online (Sandbox Code Playgroud)