2013-04-08 55 views
0

我實際上正在設計一個簡單的應用程序,以利用核心位置獲取位置詳細信息並同時顯示經緯度。 但是當我運行它,我得到一個錯誤信息如下:獲取關鍵值編碼兼容錯誤消息

終止應用程序由於未捕獲的異常「NSUnknownKeyException」, 原因:「[setValue方法:forUndefinedKey:]: 這個類不是密鑰值編碼 - 符合緯度的關鍵。「

我也綜合了這些屬性。我仍然不知道爲什麼它會拋出錯誤的確切原因!

rajViewController.h

#import <UIKit/UIKit.h> 
#import <CoreLocation/CoreLocation.h> 
@interface rajViewController : UIViewController <CLLocationManagerDelegate> 


@property (weak, nonatomic) IBOutlet UILabel *latitudeLabel; 

@property (weak, nonatomic) IBOutlet UILabel *longitudeLabel; 
@property (weak, nonatomic) IBOutlet UILabel *addressLabel; 
- (IBAction)getCurrentLocation:(id)sender; 

@end 

rajViewController.m

@interface rajViewController(){ 
    CLLocationManager *locationManager; 
    CLGeocoder *geo; 
    CLPlacemark *placemark; 
} 


@end 

@implementation rajViewController 
//@synthesize placemark; 
@synthesize latitudeLabel; 
@synthesize longitudeLabel; 

. 
. 
-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations 
{ 
    CLLocation *newPlace = [[CLLocation alloc]init]; 
    newPlace = [locations lastObject]; 
    NSLog(@"the latitude is : %f",newPlace.coordinate.latitude); 
    if (newPlace!=nil){ 
     self.latitudeLabel.text = [NSString stringWithFormat:@"%f", newPlace.coordinate.latitude]; 
     self.longitudeLabel.text = [NSString stringWithFormat:@"%f",newPlace.coordinate.longitude]; 
    } 

} 

任何幫助將非常感激。

感謝和問候, Raj。

+0

嗨Raj的問題可能是在初始化你的NSDictionary你的設置值的字典somekey之前首先檢查它是否創建只是創建它@ Raj0689 – krishh 2013-04-08 13:11:01

+0

你好sugan!對不起..但你可以有點特定..因爲我是新的Objective-C :( – Raj0689 2013-04-08 13:18:57

+0

嗨拉傑你試圖設置值的字典中的鍵不創建只是把NSLog之前設置值字典,如果它是空的(dict)。只要做dictname = [[NSMutableDictionary alloc] init] k.let我知道如果你沒有得到 – krishh 2013-04-09 04:26:17

回答

0

檢查你的筆尖,看看你是否有一些連接到outlet稱爲forLatitude。這不是一個核心的位置問題,這是一個插座連接問題

+0

謝謝:)我甚至認爲這可能是問題。所以,設計它是全新的,現在它確定:) – Raj0689 2013-04-10 08:42:08

相關問題