我想在Core Data中存储大约60张图像,其中30张是头像,前缀为avt_filename_00X.png,其中30张较小且前缀不同.
我没有将所有图像存储为Core Data/SQLite中的BLOB,而是希望存储找到的每个图像的路径(与存储MySQL数据库的图像路径的方式相同).
但是我不知道如何抓住NSBundle中的图像路径.
我可以通过以下方式获取NSDocumentDirectory的路径:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSFileManager *fileManager = [NSFileManager defaultManager];
[fileManager fileExistsAtPath:documentsDirectory];
NSLog(@"documentsDirectory = %@", documentsDirectory);
Run Code Online (Sandbox Code Playgroud)
我可以加载图像并将其添加到数组中.
if (qty == 0)
{
//NSLog(@"fileToLoad = %@", fileToLoad);
UIImage *img = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:fileToLoad ofType:fileExt]];
[self.avtList addObject:img];
[img release];
} else {
// load multiple image into an array
// not coded yet
}
Run Code Online (Sandbox Code Playgroud)
但是,我不确定的是:
如何获取计算机在NSBundle内部找到图像的路径?
当应用程序在设备上时,如何确定路径是否有效?
我们的想法是将所有图像存储在一个数组中,然后将它们推送到Core Data/SQLite.
主题说这一切真的......有没有适合Xcode调试器的好教程?我发现了一些东西,但没有什么全面的或足够深的东西.我现在的问题是这......
#0 0x90d9c688 in objc_msgSend
#1 0x30506515 in NSPopAutoreleasePool
#2 0x30901697 in _UIApplicationHandleEvent
#3 0x32046375 in PurpleEventCallback
#4 0x30245560 in CFRunLoopRunSpecific
#5 0x30244628 in CFRunLoopRunInMode
#6 0x308f930d in -[UIApplication _run]
#7 0x309021ee in UIApplicationMain
#8 0x00001ff8 in main at main.m:14
Run Code Online (Sandbox Code Playgroud)
......结合这......
0x90d9c688 <+0024> mov 0x20(%edx),%edi
Run Code Online (Sandbox Code Playgroud)
...还有这个...
EXC_BAD_ACCESS
Run Code Online (Sandbox Code Playgroud)
......没有多大帮助.或者说,真的.我正在尝试评论代码行,必须有更好的方法.
谢谢
更新:我想也许我的发泄有点分散了真正的问题,虽然提示有助于解释一些事情.我真正得到的不仅仅是对上述内容的解释,而是一般使用调试器.我通常遇到的问题是:
我知道这些是广泛的,可能应该单独询问,但我不想把这些可能已在其他地方记录的主题弄乱到SO空间.
我还注意到这里有一个几乎重复的问题:什么是Objective-c调试技巧?
我有一个电子表格,其中包含 Apple Numbers 中的数据。我有一列日期,我想创建第二列来显示两个日期之间的天数差异。
例子:
日期......................差异
2011 年 5 月 1 日……不适用
2011年5月3日......2
2011年5月8日......5
我的第一个倾向是 applescript,但也许 applescript 对于这项任务来说可能有点过分了。
无论如何,请根据需要转发。
更新:相对于下面的问题和答案,似乎我NSView
对与我试图绘制的自定义类和包装有关的类有误解NSScrollView
.最后,我想弄清楚的是如何在面积大于可视区域的情况下管理自定义数据(而不是照片)的动态绘制NSView
?
我不是在寻找讲义,但我是Cocoa的新手,我认为我在Apple的文档上做了最好的练习,但似乎我已经弄错了基础知识.Apple的文档非常详细,技术性很强,完全围绕着处理照片,因此对我来说毫无用处.Apple提供的相关代码示例(例如Sketch)以典型的倾斜方式从打印机纸张尺寸中获取文档大小,这不是我需要的.我已经在网上搜索了教程,示例等,但是我找不到任何东西(我保证在我解决这个问题时写一个).
我正在从REALbasic移植这个代码,我完全使用它,即使使用撤消命令,但这样做的范例完全不同.这对我来说不是"点击".我很欣赏给予的帮助,我在这里仍然遗漏了一些东西,人们提供的其他任何东西都值得赞赏.
谢谢
我有一个子类NSView,我正在创建一个钢琴卷MIDI接口.我想解决一些问题:
与上述有关的症状:
Apple的文档提到像素精确的绘图,但(当然)没有提供如何实现这一点的例子.我一直在使用floor()函数来尝试获得一致的值,但是一旦我开始使用scrollToPoint或任何其他复杂性,事情就会变得混乱.
请以链接图像为例进行说明.屏幕截图,如果您能相信它,实际上清理了我在屏幕上看到的内容.在半透明度下,几乎所有地方都有双线.同样适用于我绘制的任何对象.
在滚动http://www.oatmealandcoffee.com/external/NSViewArtifacts.png后生成的子类NSView中的图形工件和不一致性
这是代码.我讨厌公开放弃这么多,但我到处寻找线索,如果互联网有任何迹象表明我是唯一有这个问题的人,我真的只想把这个问题整理好并继续前进.有很多,还有更多,但这些是我真正需要做的核心事情,坦率地说,我对如何纠正它感到茫然.
- (void)drawRect:(NSRect)rect {
//NSLog(@"OCEditorView:drawRect: START");
[self setFrame:[[self EditorDocument] DocumentRect]];
[[NSGraphicsContext currentContext] setShouldAntialias:NO];
// CLEAR BACKGROUND
[[[self EditorDocument] ColorWhiteKey] set];
NSRectFill(rect);
// BACKGROUND KEYS
int firstRowLine = 0; //NSMinY(rect); //<- adding the function results in bad spacing on scrolling
int currentRowLine = 0;
int lastRowLine = NSMaxY(rect);
//NSLog(@"lastRowLine:%d", lastRowLine);
float currentZoomY …
Run Code Online (Sandbox Code Playgroud) 我想获取当前登录用户的系统语言.这条线
set lang to do shell script "defaults read NSGlobalDomain AppleLanguages"
Run Code Online (Sandbox Code Playgroud)
返回一个字符串,看起来像
(
en,
de,
ja,
fr,
es,
it,
pt,
"pt-PT",
nl,
sv,
nb,
da,
fi,
ru,
pl,
"zh-Hans",
"zh-Hant",
ko,
ar,
cs,
hu,
tr
)
Run Code Online (Sandbox Code Playgroud)
返回用户语言,但我怎样才能得到这个'数组'的第一个?是否有可能将此解析为数组获取其第一个值?
applescript ×2
objective-c ×2
automation ×1
cocoa ×1
core-data ×1
debugging ×1
image ×1
iwork ×1
macos ×1
nsbundle ×1
path ×1
spreadsheet ×1
terminal ×1
xcode ×1