代码笔记

来源:http://www.smjxgs.com 作者:操作系统 人气:124 发布时间:2019-08-08
摘要:【代码笔记】iOS-MBProgressHUD-Demo, 一,工程图。 二,代码。 ViewController.m #import "ViewController.h"#import "MBProgressHUD.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super vi

【代码笔记】iOS-MBProgressHUD-Demo,

一,工程图。

图片 1

二,代码。

ViewController.m

图片 2

#import "ViewController.h"
#import "MBProgressHUD.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.

    //初始化MBProgressHUD
    MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES];
    hud.mode = MBProgressHUDModeCustomView;
    hud.labelText = @"加载中";


}
//点击任何处隐藏MBProgressHUD
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    [MBProgressHUD hideHUDForView:self.view animated:YES];
}
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

图片 3

一,工程图。 二,代码。 ViewController.m #import " ViewController.h " #import " MBProgressHUD.h " @interface ViewController (...

【代码笔记】离线地图,笔记离线地图

一,效果图。

图片 4

二,工程图。

图片 5

三,代码。

ViewController.h

图片 6

#import <UIKit/UIKit.h>
#import <CoreLocation/CoreLocation.h>
#import "MapLocation.h"

@interface ViewController : UIViewController
<MKMapViewDelegate>
{
    MKMapView *_mapView;
    NSString *addressString;
}
@end

图片 7

 

ViewController.m

图片 8

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    //调用系统自带的高德地图

    //显示当前某地的离线地图
    _mapView = [[MKMapView alloc] init];
    _mapView.frame = CGRectMake(0, 40, 320,400);
    _mapView.delegate = self;
    _mapView.mapType = MKMapTypeStandard;
    [self.view addSubview:_mapView];


    [email protected]"光启城";
    NSLog(@"---addressString---%@",addressString);

    [self geocodeQuery];

}

- (void)geocodeQuery{

    if (addressString == nil || [addressString length] == 0) {
        return;
    }

    CLGeocoder *geocoder = [[CLGeocoder alloc] init];
    [geocoder geocodeAddressString:addressString completionHandler:^(NSArray *placemarks, NSError *error) {

        NSLog(@"查询记录数:%ld",[placemarks count]);

        if ([placemarks count] > 0) {
            [_mapView removeAnnotations:_mapView.annotations];
        }

        for (int i = 0; i < [placemarks count]; i  ) {

            CLPlacemark* placemark = placemarks[i];



            //调整地图位置和缩放比例
            MKCoordinateRegion viewRegion = MKCoordinateRegionMakeWithDistance(placemark.location.coordinate, 10000, 10000);
            [_mapView setRegion:viewRegion animated:YES];

            MapLocation *annotation = [[MapLocation alloc] init];
            annotation.streetAddress = placemark.thoroughfare;
            annotation.city = placemark.locality;
            annotation.state = placemark.administrativeArea;
            annotation.zip = placemark.postalCode;
            annotation.coordinate = placemark.location.coordinate;

            [_mapView addAnnotation:annotation];
        }
    }];

}

#pragma mark Map View Delegate Methods
- (MKAnnotationView *) mapView:(MKMapView *)theMapView viewForAnnotation:(id <MKAnnotation>) annotation {

    MKPinAnnotationView *annotationView
    = (MKPinAnnotationView *)[_mapView dequeueReusableAnnotationViewWithIdentifier:@"PIN_ANNOTATION"];
    if(annotationView == nil) {
        annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation
                                                         reuseIdentifier:@"PIN_ANNOTATION"];
    }

    annotationView.pinColor = MKPinAnnotationColorPurple;
    annotationView.animatesDrop = YES;
    annotationView.canShowCallout = YES;

    return annotationView;
}

- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation
{
    _mapView.centerCoordinate = userLocation.location.coordinate;
}

- (void)mapViewDidFailLoadingMap:(MKMapView *)theMapView withError:(NSError *)error {
    NSLog(@"error : %@",[error description]);
}


@end

图片 9

 

MapLocation.h

图片 10

#import <MapKit/MapKit.h>

@interface MapLocation : NSObject<MKAnnotation>

//街道信息属性
@property (nonatomic, copy) NSString *streetAddress;
//城市信息属性
@property (nonatomic, copy) NSString *city;
//州、省、市信息
@property (nonatomic, copy) NSString *state;
//邮编
@property (nonatomic, copy) NSString *zip;
//地理坐标
@property (nonatomic, readwrite) CLLocationCoordinate2D coordinate;

@end

图片 11

 

MapLocation.m

图片 12

//地图调用函数
#import "MapLocation.h"

@implementation MapLocation

- (NSString *)title {
    return @"您的位置!";
}
- (NSString *)subtitle {

    NSMutableString *ret = [NSMutableString new];
    if (_state)
        [ret appendString:_state];
    if (_city)
        [ret appendString:_city];
    if (_city && _state)
        [ret appendString:@", "];
    if (_streetAddress && (_city || _state || _zip))
        [ret appendString:@" • "];
    if (_streetAddress)
        [ret appendString:_streetAddress];
    if (_zip)
        [ret appendFormat:@", %@", _zip];

    return ret;
}


@end

图片 13

 

一,效果图。 二,工程图。 三,代码。 ViewController.h #import UIKit/UIKit.h#import CoreLocation/CoreLocation.h#...

【代码笔记】iOS-HTTPQueue下载图片,

一,工程图。

图片 14

二,代码。

ViewController.h

图片 15

#import <UIKit/UIKit.h>
#import "ASIHTTPRequest.h"
#import "ASINetworkQueue.h"
#import "NSNumber Message.h"
#import "NSString URLEncoding.h"


@interface ViewController : UIViewController
@property (nonatomic,strong) ASINetworkQueue  *networkQueue;

@end

图片 16

 

ViewController.m

图片 17

//ASINetworkQueue下载图片
#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}
//点击任何处,进行图片下载
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    if (!_networkQueue) {
        _networkQueue = [[ASINetworkQueue alloc] init];
    }

    // 停止以前的队列
    [_networkQueue cancelAllOperations];

    // 创建ASI队列
    [_networkQueue setDelegate:self];
    [_networkQueue setRequestDidFinishSelector:@selector(requestFinished:)];
    [_networkQueue setRequestDidFailSelector:@selector(requestFailed:)];
    [_networkQueue setQueueDidFinishSelector:@selector(queueFinished:)];

    for (int i=1; i<3; i  ) {
        NSString *strURL = [[NSString alloc] initWithFormat:@"http://iosbook3.com/service/download.php?email=%@&FileName=test%i.jpg",@"<你的iosbook3.com用户邮箱>",i];
        NSURL *url = [NSURL URLWithString:[strURL URLEncodedString]];
        ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];

        request.tag = i;
        [_networkQueue addOperation:request];
    }

    [_networkQueue go];

}
- (void)requestFinished:(ASIHTTPRequest *)request
{
    NSData *data = [request responseData];
    NSError *eror;
    NSDictionary *resDict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:&eror];

    if (!resDict) {
        UIImage *img = [UIImage imageWithData:data];
        if (request.tag ==1) {
           // _imageView1.image = img;
            NSLog(@"---img--%@",img);
        } else {
            //_imageView2.image = img;
            NSLog(@"---img--%@",img);

        }
    } else {
        NSNumber *resultCodeObj = [resDict objectForKey:@"ResultCode"];

        NSString *errorStr = [resultCodeObj errorMessage];
        UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"错误信息"
                                                            message:errorStr
                                                           delegate:nil
                                                  cancelButtonTitle:@"OK"
                                                  otherButtonTitles: nil];
        [alertView show];
    }
    if ([_networkQueue requestsCount] == 0) {
        [self setNetworkQueue:nil];
    }
    NSLog(@"请求成功");
}

- (void)requestFailed:(ASIHTTPRequest *)request
{
    NSError *error = [request error];
    NSLog(@"%@",[error localizedDescription]);
    if ([_networkQueue requestsCount] == 0) {
        [self setNetworkQueue:nil];
    }
    NSLog(@"请求失败");
}


- (void)queueFinished:(ASIHTTPRequest *)request
{
    if ([_networkQueue requestsCount] == 0) {
        [self setNetworkQueue:nil];
    }
    NSLog(@"队列完成");
}


- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

图片 18

一,工程图。 二,代码。 ViewController.h #import UIKit/UIKit.h #import " ASIHTTPRequest.h " #import " ASINetworkQueue.h "...

本文由4887王中王鉄算盘奖结果发布于操作系统,转载请注明出处:代码笔记

关键词:

上一篇:电影筛选页等源码,二次元应用

下一篇:没有了

最火资讯