2012-02-21 5 views
0

追加のビューコントローラまたはタブコントローラを作成せずに、コアロケーションデータ(Lat、Long、Altitude)を自分のiPhoneアプリケーションに統合するにはどうすればよいですか?言い換えれば、私はアプリを実行するときに、空の画面(xView)を見たいと思うが、バックグラウンドで経度、緯度情報を収集し、座標をファイルに保存したり、他の関数に渡したりできる。これはばかな質問のように聞こえる場合は申し訳ありません。私は、iOSの開発に新しいです。ありがとうございました。ビューまたはタブコントローラを導入せずに、コアの場所データを空のiPhoneアプリケーションに統合するにはどうすればよいですか?

HelloXYZAppDelegate.h: 

#import <UIKit/UIkit.h> 
#import "MyclassView.h" 

@interface HelloXYZAppDelegate: NSObject <UIApplicationDelegate> 
{ 
    MyClassView* _xView; 
} 
@property (nonatomic, retain) IBOutlet UIWindow *window; 
@property (nonatomic, retain) IBOutlet MyClassView *xView; 

@end 





HelloXYZAppDelegate.m 

#import "HelloXYZAppDelegate.h" 
@implementation HelloXYZAppDelegate 
@synthesize xView=_xView; 
@synthesize window=_window; 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:  
{ 
self.xView = [[[MyClassView alloc] initWithFrame:screenBounds] autorelease]; 
[self.window addSubview:_xView]; 
[self.window makeKeyAndVisible]; 
return YES; 
} 

@end 





MyClassView.h: 
#import <UIKit/UIKit.h> 
#import <CoreLocation/CoreLocation.h> 
#include <OpenGLES/ES2/gl.h> 

@interface MyClassView : UIView 
{ 
CAEAGLLayer* _eaglLayer; 
EAGLContext* _context; 
GLuint _CRBuffer; 
GLuint _PSlot; 
.... 
.... 
.... 
CLLocationManager *LM; //not sure if I can do this in here 
CLLocation *SP;   //not sure if I can do this in here 
} 
@property (nonatomic, retain) CLLocationManager *LM; 
@property (nonatomic, retain) CLLocation *SP; 
@end 





MyClassView.m 

- (void)locationManager:(CLLocationManager *)manager 
didUpdateToLocation:(CLLocation *)newLocation 
     fromLocation:(CLLocation *)oldLocation 
{ 
if (SP == nil) 
    self.SP = newLocation; 
NSString *latitudeString = [[NSString alloc] initWithFormat:@"%g\u00B0", 
         newLocation.coordinate.latitude]; 
NSLog(@"latitude is %@", latitudeString); 
    [latitudeString release]; 
} 

- (void)viewDidLoad 
{ 
self.LM = [[CLLocationManager alloc] init]; 
LM.delegate = self; 
LM.desiredAccuracy = kCLLocationAccuracyBest; 
[LM startUpdatingLocation];  
[super viewDidLoad]; 
} 

答えて

0

非常に単純なtutorialコアの場所で。あなたがいずれかをお勧めします、後に使用するためのデータを格納するために探しているならデータのNSObjectクラスを作成しますが、余分なクラスを作成したくない場合は、2つの@property NSStringをlatとlongと定義し、場所が作成されると2つの文字列を2つの変数に設定して後でアクセスできます。 チュートリアル画面上にデータを印刷します。希望しない場合は、その部分をそのまま残してください。

関連する問題