我正在尝试在我的应用程序中包含Sparkle框架.我真的不明白必要的具体步骤,现在我收到此错误消息:
Dyld Error Message:
Library not loaded: @loader_path/../Frameworks/Sparkle.framework/Versions/A/Sparkle
Referenced from: <..>/build/Debug/CoRay.app/Contents/MacOS/CoRay
Reason: image not found
Run Code Online (Sandbox Code Playgroud)
所以我的问题是两部分:1.如何解决我的问题?2.将框架包含在Cocoa/Obj-C应用程序中的正确途径是什么?
我在模拟器上运行我的应用程序时收到此错误消息.
Dyld错误消息:
未加载库:/System/Library/Frameworks/UIKit.framework/UIKit
参考自:/ Users/thomasschober /对不起/ build/Distribution-iphonesimulator/Excuse Me.app/Excuse Me
原因:找不到图像
我无法理解什么是问题.请帮我解决这个问题
谢谢大家
UIImage有一个只读属性CGImage.我必须将其像素读取到内存块并编辑它们,然后创建一个新的UIImage来替换旧的UIImage.我想知道是否有办法绕过只读属性并直接编辑这些像素.
谢谢.
谢谢大家.我找到了一种方法.用这些方法写一个类:
-(void)preProcess:(UIImage*)srcImage {
m_Context = ...// Created by calling CGBitmapContextCreate(...)
...
CGContextDrawImage(m_Context, rect, srcImage.CGImage);
m_Bits = (unsigned char*)CGBitmapContextGetData (mContext);
}
-(void)postProcess {
CGContextRelease(m_Context);
free(m_Bits);
}
-(UIImage*)doProcess:(CGPoint)pt {// just a example
unsigned char* ppxl = m_Bits + ...
// do something...
CGImageRef imRef = CGBitmapContextCreateImage(mContext);
return [UIImage imageWithCGImage:imRef];
}
Run Code Online (Sandbox Code Playgroud)
preProcess和postProcess只调用一次.
在搜索文本中匹配的单词时,我可以优化核心数据查询吗?(这个问题也适用于iPhone上自定义SQL与核心数据的智慧.)
我正在研究一种新的(iPhone)应用程序,它是一个科学数据库的手持式参考工具.主界面是一个标准的可搜索表视图,我想要用户键入新单词时的类型响应.单词匹配必须是文本中单词的前缀.该文本由100,000个单词组成.
在我的原型中,我直接编写了SQL.我创建了一个单独的"单词"表,其中包含主实体文本字段中的每个单词.我索引了单词并按照行进行了搜索
SELECT id, * FROM textTable
JOIN (SELECT DISTINCT textTableId FROM words
WHERE word BETWEEN 'foo' AND 'fooz' )
ON id=textTableId
LIMIT 50
Run Code Online (Sandbox Code Playgroud)
这运行得非常快.使用IN可能也会起作用,即
SELECT * FROM textTable
WHERE id IN (SELECT textTableId FROM words
WHERE word BETWEEN 'foo' AND 'fooz' )
LIMIT 50
Run Code Online (Sandbox Code Playgroud)
LIMIT至关重要,可以让我快速显示结果.如果达到限制,我会通知用户显示的内容太多.这是kludgy.
我花了最近几天考虑转移到Core Data的优势,但我担心架构中缺乏控制,索引和查询重要查询.
从理论上讲,NSPredicate textField MATCHES '.*\bfoo.*'会起作用,但我相信它会很慢.这种文本搜索似乎很常见,我想知道通常的攻击是什么?你会像我上面那样创建一个单词实体并使用"bEGINSWITH'foo'这个词的谓词吗?这会像我的原型一样快吗?Core Data会自动创建正确的索引吗?我找不到任何明确的方法来建议持久性存储有关索引.
我在iPhone应用程序中看到了Core Data的一些优点.故障和其他内存注意事项允许对tableview查询进行有效的数据库检索,而无需设置任意限制.对象图管理允许我轻松遍历实体而无需编写大量SQL.移植功能将来会很好.另一方面,在有限的资源环境(iPhone)中,我担心自动生成的数据库会因元数据,不必要的反向关系,低效的属性数据类型等而膨胀.
我应该潜入或谨慎行事吗?
CoreText是否有任何设施可用于选择字体的SmallCaps变体,或者如果字体没有该功能,则可以合成小型大写字母?我在CoreText文档中找不到任何关于小型大写的内容,尽管有处理字体变体/功能的工具.有人做过类似的事吗?
如何确定NSSearchField/NSTextField是否具有输入焦点?
我正在将一个UIViewController加载到我的一个Nav控制器层次结构中,它将包含一些文本和一些图像.在底部,我将要创建一个可扩展和可折叠的tableview.
首先,这个想法有可能吗?如果是,我该如何添加它以及在何处放置数据源和委托方法?
我可以只创建一个TableViewController的子类,然后将其作为子视图添加到我的ViewController中吗?
我是一名具有很少C/C++经验(并且没有培训)的Objective-C开发人员,今天我遇到了一些奇怪的硬编码数值.
我确定这是一个简单/愚蠢的问题,但有人可以解释为什么这样做:
NSDate *start = [NSDate date];
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, 1 * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^{
NSLog(@"seconds: %f", [start timeIntervalSinceNow]);
});
// output: seconds: -1.0001
Run Code Online (Sandbox Code Playgroud)
这也有效(注意秒数已经改变):
NSDate *start = [NSDate date];
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, 2 * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^{
NSLog(@"seconds: %f", [start timeIntervalSinceNow]);
});
// output: seconds: -2.0001
Run Code Online (Sandbox Code Playgroud)
但这是立即执行的:
NSDate *start = [NSDate date];
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, 4 * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^{
NSLog(@"seconds: %f", [start timeIntervalSinceNow]);
});
// output: seconds: -0.0001
Run Code Online (Sandbox Code Playgroud)
但是,使用4.0而不是4 …
我试图在我的UIScrollView中滚动"循环",但不成功.
我想做什么:如果uiscrollview到达结束,如果uiscrollview在开始并向后移动它应该移动到开始,它应该移动到结束
在我的情况下附加scrollview不是好方法(其他方法应该得到"页面ID")
你有什么想法吗?
我在Cocoa应用程序中使用AVPlayer,并且我实现了一个跳转到视频末尾的命令.
问题是,AVPlayer没有寻求我告诉它的地方.
例如,我有一个视频是4分14秒.当我寻求结束时,AVPlayer寻求4分12秒 - 两秒钟.如果我然后点击播放,播放器将播放两秒钟,然后到达结尾.
我的第一次尝试是这样的:
[self.player seekToTime:self.player.currentItem.duration];
Run Code Online (Sandbox Code Playgroud)
我把它换成了这个:
[self.player seekToTime:self.player.currentItem.duration
toleranceBefore:kCMTimePositiveInfinity
toleranceAfter:kCMTimeZero];
Run Code Online (Sandbox Code Playgroud)
两者都没有比另一个更好.
我也试过去寻求kCMTimePositiveInfinity.那时它只是忽略了我.
播放器是否已加载视频的那部分似乎并不重要.我甚至可以寻求不完全结束,玩到真正的结局,然后再次尝试寻求到最后,它将跳回到不完全结束.
缺口并不总是两秒钟.在我的一些视频中,它或多或少地完全正确地工作,如果不完全正确,则跳得非常接近真实的结束.在至少一个,它短至三秒钟.长度似乎不是一个因素; 所有这些都是大约相同的长度,除了一个,超过一个小时,并寻求短短两秒.
那么,为什么AVPlayer在我告诉它的地方跳了多达三秒钟,我怎么说服它跳到我要求的那一刻?
cocoa ×5
cocoa-touch ×5
iphone ×4
ios ×3
uikit ×3
macos ×2
objective-c ×2
avfoundation ×1
avplayer ×1
c ×1
core-data ×1
core-text ×1
dyld ×1
frameworks ×1
linker ×1
osx-lion ×1
sql ×1
uiscrollview ×1