小编Nun*_*ter的帖子

使用RestKit进行POST后导致nil对象被发布

我在使用RestKit 0.20pre6发布NSManagedObject时遇到问题,导致在我的Rails站点上使用nil值创建一个条目.我怀疑是mapper,但我已经正确地设置了我的RK对象.很少有例子和有限的支持.该示例处理NSObjects而非CoreData,因此我不得不做出一些假设.

这是我的发布代码,然后是控制台输出.该应用程序从服务器获取对象很好.

        // Sync the added object to the server
    // ****************************************

    RKObjecMapping *responseMapping = [RKObjectMapping mappingForClass:[Event class]];
//  RKEntityMapping *responseMapping = [RKEntityMapping mappingForEntityForName:@"Event" inManagedObjectStore:self.managedObjectStore];
    [responseMapping addAttributeMappingsFromDictionary:@{
     @"id": @"eventId",
     @"name": @"name",
     @"amount": @"amount",
     @"length": @"length",
     @"updated_at": @"updatedAt",
     @"created_at": @"createdAt",
     @"latitude": @"latitude",
     @"longitude": @"longitude",
     @"thumbnail": @"thumbnail",
     @"airTemp": @"airTemp",
     }];

    NSIndexSet *statusCodes = RKStatusCodeIndexSetForClass(RKStatusCodeClassSuccessful); // Anything in 2xx
    RKResponseDescriptor *eventDescriptor = [RKResponseDescriptor responseDescriptorWithMapping:responseMapping
                                                                                    pathPattern:@"/events"
                                                                                        keyPath:@"events"
                                                                                    statusCodes:statusCodes
                                                                                                ];

    RKObjectMapping *requestMapping = [RKObjectMapping requestMapping]; // objectClass == NSMutableDictionary

    [requestMapping addAttributeMappingsFromDictionary:@{
     @"id": @"eventId",
     @"name": …
Run Code Online (Sandbox Code Playgroud)

iphone core-data ipad ios restkit

4
推荐指数
1
解决办法
1341
查看次数

接口生成器中的更改未在SImulator或Device中显示

我有一个视图,我在Interface Builder中使用默认按钮和背景创建.该应用程序运行正常.我在视图和按钮中添加了.png背景图像.构建应用程序并运行它,并且不显示更新.

我也尝试过一些简单的事情,例如更改按钮的文本或添加另一个按钮,并且更改不会传播.

我已经清理了目标,在Finder中手动删除了构建,并关闭了计算机.我还缺少什么?

iphone interface-builder uiview uiimageview ipad

2
推荐指数
1
解决办法
4126
查看次数

旋转视图时,UIInterfaceOrientationIsLandscape不会触发

我试图使我的应用程序在横向和纵向工作.我在所有的viewcontrollers中安装了正确的方法,这个代码在ipad模拟器旋转时触发,但总是触发纵向.横向IF子句永远不会被触发.我能做错什么?

-(void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)InterfaceOrientation {
NSLog(@"******* ROTATING ******");
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
    if(UIInterfaceOrientationIsLandscape(self.interfaceOrientation)) {

        NSLog(@"ROTATING View Landscape ******");

    } else    if(UIInterfaceOrientationIsPortrait(self.interfaceOrientation)) {

        NSLog(@"ROTATING View Portrait ******");

    }
} 
Run Code Online (Sandbox Code Playgroud)

}

iphone rotation uiview ipad uiinterfaceorientation

2
推荐指数
1
解决办法
9026
查看次数

Alexa lambda_handler没有创建事件会话

我有一个问题让我的python lambda函数工作.我得到一个无效的键,用于在调用技能时应该创建的事件数组.我得到的错误是:

{
    "stackTrace": [
        [
            "/var/task/lambda_function.py",
            163,
            "lambda_handler",
            "app_id = event['session']['application']['applicationId']"
            ]
    ],
    "errorType": "KeyError",
    "errorMessage": "'session'"
}
Run Code Online (Sandbox Code Playgroud)

这是我的代码

def lambda_handler(event, context):


"""Lambda function entrypoint."""
# print("event.session.application.applicationId={}".format(
#       event['session']['application']['applicationId']))

# Prevent unwanted access to this Lambda function.
app_id = event['session']['application']['applicationId']
if app_id != "amzn1.ask.skill.yyyyyyyy-xxx":
    raise ValueError("Invalid Application ID: {}".format(app_id))

request = event['request']

if event['session']['new']:
    on_session_started(
        {'requestId': request['requestId']}, event['session'])

func_map = {
    "LaunchRequest": on_launch,
    "IntentRequest": on_intent,
    "SessionEndedRequest": on_session_ended,
}

return func_map[request['type']](event['request'], event['session'])
Run Code Online (Sandbox Code Playgroud)

python alexa aws-lambda alexa-skills-kit

2
推荐指数
1
解决办法
1921
查看次数

使用NSPredicate过滤数组的NSDictionary

我有一个plist,我已经定义为包含许多数组的字典.我想从字典中删除所有具有与给定字符串匹配的第一个"Item 0"(默认命名约定)的数组.

我尝试过类似于过滤NSArray的东西,但是我得到了一个正则表达式错误,控制台会在字典中显示第一个数组的内容.

另外,我是否需要将我的NSDictionary实例化为NSMutableDictionary,因为我将对其执行过滤处理?是否更好的形式是将从清单中读入的NSDictionary复制到必须的,然后对其进行处理?

iphone objective-c nsdictionary nspredicate ipad

1
推荐指数
1
解决办法
6874
查看次数

Plist Array到NSArray没有对象

所以我之前已经搜索过并阅读并成功完成了这项工作,但是我遇到了这个问题.

我有一个plist是一个字符串数组.我没有被读入数组的对象.我成功地为另一个控制器中的字典做了这个.所以这是我的代码.

    // Open plist and get brands
NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"brands" ofType:@"plist"];
NSFileManager *fileManager = [NSFileManager defaultManager];
if ([fileManager fileExistsAtPath:plistPath]) {
    NSLog(@"The file exists");
} else {
    NSLog(@"The file does not exist");
}

_brands = [NSArray arrayWithContentsOfFile:plistPath];

_catList = [[[NSMutableArray alloc] initWithCapacity:[_brands count]] autorelease];
Run Code Online (Sandbox Code Playgroud)

这是我的plist.请注意,_brands数组被定义为NSArray*品牌,属性设置为非原子,readonly并合成为brands = _brands.

<?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>Root</key>
    <array>
        <string>Brand A</string>
        <string>Brand B</string>
        <string>Brand C</string>
        <string>Brand D</string>
    </array>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)

我看到有一个标签,但在Xcode中它显示为带有字符串的数组.不是字典>数组>许多字符串

iphone objective-c plist ipad ios

1
推荐指数
1
解决办法
3118
查看次数

发送到实例的无效选择器 - objectForKey:

运行我的代码时出错.罪魁祸首是我从下面的plist访问一个字符串:

    NSString *sImageFile = [dictionary objectForKey:@"answerCorrect"];
    NSLog(@"%@",sImageFile);
Run Code Online (Sandbox Code Playgroud)

我在这里显示的cocos2d Init中有这个:

-(id) init
{
    // always call "super" init
    // Apple recommends to re-assign "self" with the "super" return value
    if( (self=[super init])) {

        NSUserDefaults *sud = [NSUserDefaults standardUserDefaults];
        NSString *ctlLang = [sud valueForKey:@"ctlLang"];
        NSNumber *questionState = [sud valueForKey:@"questionState"];
        NSNumber *scoreState = [sud valueForKey:@"scoreState"];
        gameArray = (NSMutableArray *)[sud valueForKey:@"gameArray"];
        for (NSString *element in gameArray) {
            NSLog(@"\nQL gameArray value=%d\n", [element intValue]);
        }
        NSString *path = [[NSBundle mainBundle] bundlePath];
        NSString *finalPath = [path stringByAppendingPathComponent:ctlLang]; …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c nsdictionary nsstring ios

0
推荐指数
1
解决办法
2036
查看次数

UIButtons在动画块期间不会淡出

我有一组UIButtons和UILabel,我想在选择一个按钮时淡出,这是正确的按钮.

我尝试了很多东西(在代码块中对它们进行了评论),只有UILabels淡出.我在这里错过了什么?

-(IBAction)answerButtonPressed:(UIButton *)sender {
NSLog(@"Game Question Answer Pressed: %i", sender.tag);
NSLog(@"%@", sender.titleLabel.text);

int selectedAnswer =0;
selectedAnswer = [question.answer intValue];

if (selectedAnswer == sender.tag) {
    NSLog(@"GameQ %@ is the correct answer", sender.titleLabel.text);

    //self.toggleView;

    [labelA setAlpha:0];
    [labelB setAlpha:0];
    [labelC setAlpha:0];
    [labelD setAlpha:0];


    /*
    [buttonA setAlpha:0];
    [buttonB setAlpha:0];
    [buttonC setAlpha:0];
    [buttonD setAlpha:0];

    [buttonA setHidden:YES];
    [buttonB setHidden:YES];
    [buttonC setHidden:YES];
    [buttonD setHidden:YES];
     */        
    [sender setAlpha:1];
    [sender setHidden:NO];

    [[UIApplication sharedApplication] beginIgnoringInteractionEvents];
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:1.5];

    [UIView animateWithDuration:2.0
                          delay:0.0
                        options: UIViewAnimationCurveEaseOut
                     animations:^{buttonA.alpha = 0;}
                     completion:nil]; …
Run Code Online (Sandbox Code Playgroud)

iphone core-animation uibutton ipad ios

0
推荐指数
1
解决办法
1999
查看次数