zoukankan      html  css  js  c++  java
  • 获取当前位置

    http://stackoverflow.com/questions/3535800/cllocationmanager-strange-memory-leak

    #import <Foundation/Foundation.h>

    #import <CoreLocation/CoreLocation.h>

    @protocol MapLocationManagerDelegate 

    @required

    - (void)locationUpdate:(CLLocation *)location;

    - (void)locationError:(NSError *)error;

    @end

    @interface MapLocationManager : NSObject <CLLocationManagerDelegate>{

    CLLocationManager *locationManage;

    id delegate;

    }

    @property (nonatomic, retain) CLLocationManager *locationManage;

    @property (nonatomic, assign) id delegate;

    @end

    /*  

    //调用例子

     h文件

     #import <UIKit/UIKit.h>

     

     #import "CoreLocationController.h"

     

     @interface CoreLocationDemoViewController : UIViewController <MapLocationManagerDelegate > {

     MapLocationManager *CLController;

     IBOutlet UILabel *locLabel;

     }

     

     @property (nonatomic, retain)  MapLocationManager *CLController;

     

     @end

     

     m文件

     

     - (void)viewDidLoad {

     [super viewDidLoad];

     

     CLController = [[ MapLocationManager alloc] init];

     CLController.delegate = self;

     [CLController.locMgr startUpdatingLocation];

     }

     

     - (void)locationUpdate:(CLLocation *)location {

     locLabel.text = [location description];

     }

     

     - (void)locationError:(NSError *)error {

     locLabel.text = [error description];

     }

     

     - (void)didReceiveMemoryWarning {

     [super didReceiveMemoryWarning];

     }

     

     

     - (void)dealloc {

     [CLController release];

     [super dealloc];

     }

     

    */

    m

    #import "MapLocationManage.h"

    @implementation MapLocationManager

    @synthesize locationManage, delegate;

    - (id) init {

    self = [super init];

    if(self != nil) {

    self.locationManage = [[[CLLocationManager alloc] init] autorelease];

    self.locationManage.delegate = self;

    [self performSelector:@selector(stopUpdate) withObject:@"Timed Out" afterDelay:10.0];

    }

    return self;

    }

    - (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation

    {

    if([self.delegate conformsToProtocol:@protocol(MapLocationManagerDelegate)]) {

    [self.delegate locationUpdate:newLocation];

    }

    }

    - (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error{

    if([self.delegate conformsToProtocol:@protocol(MapLocationManagerDelegate)]) {

    [self.delegate locationError:error];

    }

    }

    -(void)stopUpdate

    {

    [self.locationManage stopUpdatingLocation];

    }

    - (void)dealloc {

        [self.locationManage release];

    [super dealloc];

    }

    @end

  • 相关阅读:
    spring boot下载本地静态文件最实用
    非常实用的MySQL中if、ifnull函数以及case/when的使用
    java获取访问地址IP的简单方法
    Oracle数据库视图的创建以及使用
    http-post调用接口简单代码
    orale数据库to_char时间中英文转换
    java线程的简单实用
    java小数保留位数四舍五入
    二项式反演
    学习总结-后缀数组
  • 原文地址:https://www.cnblogs.com/zzxap/p/2175605.html
Copyright © 2011-2022 走看看