ios-IOS- “This class is not key value coding-compliant”

问题描述

IOS- “This class is not key value coding-compliant”
在ios应用中声明:

@interface UserRegistrationRequest : BaseServiceRequest@property (nonatomic retain) NSString *username;@property (nonatomic retain) NSString *password;@property (nonatomic retain) NSString *secretQuestionID;@property (nonatomic retain) NSString *secretQuestionAnswer;@property (nonatomic retain) UserProfile *profile;@end@interface UserProfile : NSObject@property (nonatomic retain) NSString *emailAddress;@property (nonatomic retain) NSString *firstName;@property (nonatomic retain) NSString *lastName;@property (nonatomic retain) NSData *profileImage;@property (nonatomic retain) NSNumber *dateOfBirth;@end

我认为这些类应该是键值编码兼容
运行下面的代码:

NSString *propKey = @""profile.firstName"";NSString *propVal = [self.registrationRequest valueForKey:propKey];

报出异常:

[<UserRegistrationRequest 0xb6187f0> valueForUndefinedKey:]: this class is not key value coding-compliant for the key profile.firstName.

不知道应该怎么解决?

解决方案

使用这个:

NSString *propVal = [self.registrationRequest valueForKeyPath:propKey];
时间: 2024-10-27 10:46:08

ios-IOS- “This class is not key value coding-compliant”的相关文章

CNNVD有关Cisco IOS&amp;IOS XE Software CMP 安全漏洞情况的通报

本文讲的是CNNVD有关Cisco IOS&IOS XE Software CMP 安全漏洞情况的通报,路由交换市场份额领先的思科(Cisco)公司于3月17日发布了IOS和IOS XE Software安全漏洞(CNNVD-201703-840),引起了广泛关注.该漏洞允许未授权的攻击者执行任意代码.提升权限.重启设备等.国家信息安全漏洞库(CNNVD)对此进行了跟踪分析,具体情况如下: 一. 漏洞简介 Cisco IOS/IOS XE Software是美国思科(Cisco)公司为其网络设备

思科 IOS&amp;IOS XE Software CMP远程代码执行漏洞通报

2017年3月17日美国时间下午4点,Cisco官方网站发布Cisco IOS&IOS XE Software 集群管理协议(Cluster Management Protocol)存在远程代码执行漏洞.该漏洞目前为0day漏洞,危害等级高.该漏洞允许未授权访问,远程攻击者可以重启设备和远程执行代码提升权限. Cisco IOS是Cisco的网际操作系统:是一个为网际互连优化的复杂的操作系统:也是一个与硬件分离的软件体系结构,随网络技术的不断发展,可动态地升级以适应不断变化的技术(软件). 根据

[iOS]iOS AudioSession详解 Category选择 听筒扬声器切换

在你读这篇文章之前,如果你不嫌读英文太累,推荐阅读下苹果iOS Human Interface Guidelines中Sound这一章. 选择一个Category AVAudioSessionCategoryAmbient 或 kAudioSessionCategory_AmbientSound --用于非以语音为主的应用,使用这个category的应用会随着静音键和屏幕关闭而静音.并且不会中止其它应用播放声音,可以和其它自带应用如iPod,safari等同时播放声音.注意:该Category无

ffmpeg ios...-IOS给定URL用ffmpeg压缩视频的代码

问题描述 IOS给定URL用ffmpeg压缩视频的代码 各位大神,谁能提供给定一个视频URL如何用ffmpeg压缩视频的代码? 解决方案 ffmpeg(3) URL

[IOS]iOS中创建,使用动态库(dylib)

测试环境: xcode4.5.2   Mac OS X 10.8.2 重要:由于苹果不支持自己创建动态库,所以这里需要替换两个文件 1:iOS Device 需要替换的文件 替换路径:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Specifications/ 2:iOS 模拟器 需要替换的文件 替换路径:/Applications/Xcode.app/

iOS - iOS 适配

前言 什么是适配: 适应.兼容各种不同的情况. iOS 开发中,适配的常见种类: 1)系统适配, 针对不同版本的操作系统进行适配. 2)屏幕适配,针对不同大小的屏幕尺寸进行适配. iPhone 的尺寸:3.5 inch.4.0 inch.4.7 inch.5.5 inch . iPad 的尺寸:7.9 inch.9.7 inch.12.9 inch . 屏幕方向:竖屏.横屏. 1.系统适配 Objective-C // 获取系统版本 float systemVersion = [UIDevice

iOS开发系列--Objective-C之KVC、KVO

概述 由于ObjC主要基于Smalltalk进行设计,因此它有很多类似于Ruby.Python的动态特性,例如动态类型.动态加载.动态绑定等.今天我们着重介绍ObjC中的键值编码(KVC).键值监听(KVO)特性: 键值编码KVC 键值监听KVO 键值编码KVC 我们知道在C#中可以通过反射读写一个对象的属性,有时候这种方式特别方便,因为你可以利用字符串的方式去动态控制一个对象.其实由于ObjC的语言特性,你根部不必进行任何操作就可以进行属性的动态读写,这种方式就是Key Value Codin

iOS开发UI篇—字典转模型

一.能完成功能的"问题代码" 1.从plist中加载的数据 2.实现的代码 // // LFViewController.m // 03-应用管理 // // Created by apple on 14-5-22. // Copyright (c) 2014年 heima. All rights reserved. // #import "LFViewController.h" @interface LFViewController () @property (n

ios开发UI篇—Kvc简单介绍

一.KVC简单介绍 KVC key valued coding 键值编码 KVC通过键值间接编码 补充: 与KVC相对的时KVO,即key valued observer 键值观察.监听某一个模型的属性,只要模型属性的值一变化就通知你. 二.使用KVC 1.KVC基本使用介绍 (1)代码示例: 新建一个命令行项目,用以演示KVC的用法 完成之后为项目添加一个Person类. 为Person类添加两个属性(name和age),注意这两个属性的类型. 1 #import <Foundation/Fo

详解iOS应用UI开发中的九宫格坐标计算与字典转换模型_IOS

九宫格坐标计算 一.要求 完成下面的布局 二.分析 寻找左边的规律,每一个uiview的x坐标和y坐标. 三.实现思路 (1)明确每一块用得是什么view (2)明确每个view之间的父子关系,每个视图都只有一个父视图,拥有很多的子视图. (3)可以先尝试逐个的添加格子,最后考虑使用for循环,完成所有uiview的创建 (4)加载app数据,根据数据长度创建对应个数的格子 (5)添加格子内部的子控件 (6)给内部的子控件装配数据 四.代码示例 复制代码 代码如下: // //  YYViewC