我有一个包含字典对象的数组.在每个字典中,密钥是常见的.现在我想获得该密钥的所有值.我有迭代的这些值,但我正在寻找一些直接的方法或一个默认的方法来完成这项工作.
你能帮我一个默认的方法来达到目的吗?谢谢.
数据结构是这样的:
<array>
<dict>
<key>Match</key>
<string>Football</string>
<key>Stadium</key>
<string>XXXXX</string>
</dict>
<dict>
<key>Match</key>
<string>HOCKY</string>
<key>Stadium</key>
<string>XXXXX</string>
</dict>
</array>
Run Code Online (Sandbox Code Playgroud)
我现在这样做:
NSMutableArray * matches = [[NSMutableArray alloc] init];
for (int i = 0; i< myArray.count; i++){
[matches insertObject:[[myArray objectAtIndex:i] objectForKey:@"Match"] atIndex:i];
}
[matchDataArray addObjectsFromArray:matches];
Run Code Online (Sandbox Code Playgroud)
它给了我正确的答案.但我不想做这个迭代.我想要一个方法,它将从数组的所有索引返回"匹配"键的所有值,并立即保存在另一个数组中.新创建的数组将只包含来自数组的所有索引的Match键值.
这可能吗??
有很多关于如何让NSScrollView集中其文档视图的例子.这里有两个例子(它们是如此相似,以至于有人在没有归属的情况下复制某人,但关键是如何.) http://www.bergdesign.com/developer/index_files/88a764e343ce7190c4372d1425b3b6a3-0.html https:// github的.com/devosoft/avida /斑点/主/应用/观察者的MacOS/SRC /主/ CenteringClipView.h
这通常通过子类化NSClipView并覆盖来完成:
- (NSPoint)constrainScrollPoint:(NSPoint)newOrigin;
但是在Mac OS X 10.9 +中不推荐使用此方法
我们现在能做什么?哦不!〜
如何将非破坏空间(如html中的"")插入NSString或NSMutableAttributedString?
我知道这个问题之前已被问过很多但是我确实已经阅读了,我会告诉你我得到了什么.
我将列出我在OS X Yosemite 10.10.1中执行的命令
java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
Run Code Online (Sandbox Code Playgroud)
java -fullversion
java full version "1.8.0_45-b14"
Run Code Online (Sandbox Code Playgroud)
哪个java
/usr/bin/java
Run Code Online (Sandbox Code Playgroud)
没有设置Java home变量,因为当我这样做时:echo $ java_home或echo $ JAVA_HOME或echo $ Java_Home终端上什么都没有.
这样做:ls -l which java 我得到了这个:
8 lrwxr-xr-x 1 root wheel 74 Nov 12 2014 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
Run Code Online (Sandbox Code Playgroud)
javac -version
javac 1.8.0_45
Run Code Online (Sandbox Code Playgroud)
的/ usr /的libexec/JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)
echo "export JAVA_HOME=`/usr/libexec/java_home`" >> ~/.profile …Run Code Online (Sandbox Code Playgroud) 当使用自动布局时,我的理解是删除子视图(当然保留对它的引用),删除的子视图仍然知道它的自动布局约束.
但是,当稍后将其添加回超级视图时,子视图不再知道其帧大小.相反,它似乎得到零帧.
我假设autolayout会自动调整大小以满足约束条件.那不是这样吗?我认为自动布局意味着不要弄乱框架.添加子视图时是否仍需要设置初始帧rect,即使使用自动布局?
当继承在.h文件中列出私有ivars的Apple类时,是否可以在子类.m文件中的类扩展@interface中重新声明自己子类中的那些ivar,以使它们可以被子类实现访问?
当tableView是拖动源时,是否需要子类化NSTableView或NSTableCellView来创建自定义拖动图像?
如果没有,我错过的神奇方法是什么?我似乎找不到任何可靠的东西.
NSTableCellView子类可以(略微神秘地)覆盖:
@property(retain, readonly) NSArray *draggingImageComponents
(将合成的NSDraggingImageComponent实例数组(谁知道它们以何种方式合成...))
NSTableView本身就有
- (NSImage *)dragImageForRowsWithIndexes:(NSIndexSet *)dragRows tableColumns:(NSArray *)tableColumns event:(NSEvent *)dragEvent offset:(NSPointPointer)dragImageOffset
但这些确实是子类化选项.
有人知道另一种技术吗?(10.8+是目标)
如何将CIPixellate核心图像过滤器添加到Sprite Kit场景?
我有一个SpriteKit场景,它是SKScene或它的子类.我想在场景中添加Core Image滤镜.特别是一个CIPixellate过滤器,所以我可以免费获得8位游戏天堂.
我怎么做?
因此,NSViewController使用xib/nib 创建自定义子类.然后在app的主nib中,NSViewController从对象库中添加一个对象,将该类设置为自定义视图控制器类.IBOutlet在自定义视图控制器的应用程序委托中创建.
将NSView对象添加到窗口.将视图控制器的视图设置为窗口中的视图NSView.
当我构建和运行时,视图是主笔尖中的通用视图,而不是视图控制器的笔尖中的视图...
还有什么需要让这个过程按照我的想法运作?我认为这应该从自定义视图控制器的笔尖填充视图(和任何子视图).
我知道如何在代码中执行此操作,但它确实看起来像锅炉板.(特别是添加了自动布局约束.)
请告诉我,我错过了一些愚蠢明显的东西.
我在plist文件(iOS)中存储了一些字典,这些字典随后被加密.在读取文件内容并解密后,我将以字符串形式返回文件的xml内容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>password</key>
<string>apassword</string>
<key>username</key>
<string>ausername</string>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)
我知道这些方法:dictionaryWithContentsOfFile:(NSString *)并dictionaryWithContentsOfFile:(NSURL *)从这种类型的数据创建一个字典,但我很惊讶没有这样的dictionaryWithXML:(NSString *)
没有将这些数据写入文件然后阅读它,我试图避免的东西,因为它只是过度,有什么明显的解决方法,我缺少?
当使用NSEvent flagsChanged并使用各种KeyMasks对标志进行AND运算时,如何以独占方式测试?目前,使用一系列if else条件的模式:
if ((flags & someKeyMask) && (flags someOtherKeyMask))
Run Code Online (Sandbox Code Playgroud)
即使第三个修改键已关闭,这也将匹配.在if else条件中更早地放置一系列关键掩码使得行为按照需要工作,但在某种程度上感觉不完整.说"只有这些修饰键,而不是任何其他键"是一种好方法吗?
这是一个更具体的例子,其中第一个与其他人匹配.我想知道是否有办法为每一个添加一些逻辑"只有这些修饰键".
if ((flags & (NSCommandKeyMask|NSControlKeyMask))) {
NSLog(@"one");
}else if (((flags & NSCommandKeyMask) && (flags & NSAlternateKeyMask)) && (flags & NSControlKeyMask)) {
NSLog(@"Command+Option+Control ");
} else if ((flags & NSCommandKeyMask) && (flags & NSShiftKeyMask)) {
NSLog(@"Command+Shift ");
} else if ((flags & NSCommandKeyMask) && (flags & NSControlKeyMask)) {
NSLog(@"Command+Control");
} else if ((flags & NSCommandKeyMask) && (flags & NSAlternateKeyMask)) {
NSLog(@"Command+Option ");
}
Run Code Online (Sandbox Code Playgroud)
所以我正在寻找的正确模式,由Ken Thomases提供:
flags &= (<one or …
我正在更新一个旧的Objective-C应用程序,以包含一个用Swift编写的WatchExtension.
我确定要更改嵌入式内容包含Swift Code默认值:

我有以下头文件:
#import <Foundation/Foundation.h>
@interface Elements : NSObject
// designated initializer
-(instancetype)initWithElement:(NSString *)atom
AndNumber:(NSNumber *)number;
+(NSDictionary *) elementInfo;
+(NSArray *) atomArray;
@property (strong, nonatomic) NSNumber *mass;
@property (strong, nonatomic) NSString *name;
@property (strong, nonatomic) NSString *ChemicalName;
@end
Run Code Online (Sandbox Code Playgroud)
如何在SwiftWatch扩展中使用上述Elements对象?
现在我有以下错误:

objective-c ×6
cocoa ×5
foundation ×2
nsdictionary ×2
apple-watch ×1
autolayout ×1
centering ×1
cifilter ×1
cipixellate ×1
cocoa-touch ×1
core-image ×1
ios ×1
java ×1
java-home ×1
macos ×1
nib ×1
nsarray ×1
nsclipview ×1
nsevent ×1
nsscrollview ×1
nsstring ×1
nstableview ×1
nsview ×1
plist ×1
skscene ×1
sprite-kit ×1
subclass ×1
subview ×1
swift ×1
xcode ×1
xcode5 ×1
xib ×1