MBMapkit
/Users/dongkui/ios_api/branches/1.0.x/code/config/MBMapDemo/MBMapkit/MBMapkit/MBMapView.h
00001 //
00002 //  MBMapView.h
00003 //  MB"MBMapkit.h"
00004 //
00005 //  Copyright 2011 Mapbar Inc. All rights reserved.
00006 //
00007 
00008 #import <UIKit/UIKit.h>
00009 
00010 #import "MBGeometry.h"
00011 #import "MBAnnotationView.h"
00012 #import "MBOverlayView.h"
00013 #import "MBPolygon.h"
00014 #import "MBPolyline.h"
00015 #import "MBCircle.h"
00016 #import "MBPolygonView.h"
00017 #import "MBPolylineView.h"
00018 #import "MBCircleView.h"
00019 #import "MBUserLocation.h"
00020 #import "MBReverseGeocoder.h"
00021 
00022 enum {
00023     MBMapTypeStandard = 0,
00024 };
00025 typedef NSUInteger MBMapType;
00026 
00027 @class MapRender;
00028 @class MBUserLocation;
00029 @class MBMapViewInternal;
00030 
00031 @protocol MBMapViewDelegate;
00074 @interface MBMapView : UIView <UIScrollViewDelegate,CLLocationManagerDelegate,MBReverseGeocoderDelegate> {
00075 @private
00076    MBMapViewInternal *_internal;
00077 }
00078 
00083 -(void)setRegisterCode:(NSString *)registerCode;
00084 
00093 - (id)initWithFrame:(CGRect)frame withLocal:(BOOL)doLocal;
00094 
00100 - (unsigned long long)totalBytesSended;
00101 
00107 - (unsigned long long)totalBytesReceived;
00108 
00115 @property(nonatomic, assign) id<MBMapViewDelegate> delegate;
00116 
00132 @property (nonatomic) MBCoordinateRegion region;
00133 
00148 - (void)setRegion:(MBCoordinateRegion)region animated:(BOOL)animated;
00149 
00160 @property(nonatomic) CLLocationCoordinate2D centerCoordinate;
00161 
00173 - (void)setCenterCoordinate:(CLLocationCoordinate2D)coordinate animated:(BOOL)animated;
00174 
00184 - (MBCoordinateRegion)regionThatFits:(MBCoordinateRegion)region;
00185 
00193 @property (nonatomic) MBMapRect visibleMapRect;
00194 
00201 - (void)setVisibleMapRect:(MBMapRect)mapRect animated:(BOOL)animate;
00202 
00212 - (MBMapRect)mapRectThatFits:(MBMapRect)mapRect;
00213 
00221 - (void)setVisibleMapRect:(MBMapRect)mapRect edgePadding:(UIEdgeInsets)insets animated:(BOOL)animate;
00222 
00230 - (MBMapRect)mapRectThatFits:(MBMapRect)mapRect edgePadding:(UIEdgeInsets)insets;
00231 
00240 - (CGPoint)convertCoordinate:(CLLocationCoordinate2D)coordinate toPointToView:(UIView *)view;
00241 
00249 - (CLLocationCoordinate2D)convertPoint:(CGPoint)point toCoordinateFromView:(UIView *)view;
00250 
00259 - (CGRect)convertRegion:(MBCoordinateRegion)region toRectToView:(UIView *)view;
00260 
00268 - (MBCoordinateRegion)convertRect:(CGRect)rect toRegionFromView:(UIView *)view;
00269 
00274 @property (nonatomic) MBMapType mapType;
00275 
00283 @property(nonatomic, getter=isZoomEnabled) BOOL zoomEnabled;
00284 
00292 @property(nonatomic, getter=isScrollEnabled) BOOL scrollEnabled;
00293 
00294 
00299 @property (nonatomic) BOOL showsScale;
00300 
00305 @property (nonatomic) BOOL showsTraffic;
00306 
00316 @property (nonatomic) BOOL showsUserLocation;
00317 
00322 @property (nonatomic, readonly) MBUserLocation *userLocation;
00323 
00332 @property (nonatomic, readonly, getter=isUserLocationVisible) BOOL userLocationVisible;
00333 
00342 - (void)addAnnotation:(id <MBAnnotation>)annotation;
00343 
00352 - (void)addAnnotations:(NSArray *)annotations;
00353 
00366 - (void)removeAnnotation:(id <MBAnnotation>)annotation;
00367 
00381 - (void)removeAnnotations:(NSArray *)annotations;
00382 
00393 @property (nonatomic, readonly) NSArray *annotations;
00394 
00403 - (NSSet *)annotationsInMapRect:(MBMapRect)mapRect;
00404 
00412 - (MBAnnotationView *)viewForAnnotation:(id <MBAnnotation>)annotation;
00413 
00425 - (MBAnnotationView *)dequeueReusableAnnotationViewWithIdentifier:(NSString *)identifier;
00426 
00436 - (void)selectAnnotation:(id <MBAnnotation>)annotation animated:(BOOL)animated;
00437 
00445 - (void)deselectAnnotation:(id <MBAnnotation>)annotation animated:(BOOL)animated;
00446 
00453 @property (nonatomic, copy) NSArray *selectedAnnotations;
00454 
00459 @property (nonatomic, readonly) CGRect annotationVisibleRect;
00460 
00471 - (void)addOverlay:(id <MBOverlay>)overlay;
00472 
00483 - (void)addOverlays:(NSArray *)overlays;
00484 
00493 - (void)removeOverlay:(id <MBOverlay>)overlay;
00494 
00503 - (void)removeOverlays:(NSArray *)overlays;
00504 
00511 - (void)insertOverlay:(id <MBOverlay>)overlay atIndex:(NSUInteger)index;
00512 
00521 - (void)exchangeOverlayAtIndex:(NSUInteger)index1 withOverlayAtIndex:(NSUInteger)index2;
00522 
00532 - (void)insertOverlay:(id <MBOverlay>)overlay aboveOverlay:(id <MBOverlay>)sibling;
00533 
00543 - (void)insertOverlay:(id <MBOverlay>)overlay belowOverlay:(id <MBOverlay>)sibling;
00544 
00553 @property (nonatomic, readonly) NSArray *overlays;
00554 
00561 - (MBOverlayView *)viewForOverlay:(id <MBOverlay>)overlay;
00562 
00563 @end
00564 
00573 @protocol MBMapViewDelegate <NSObject>
00574 
00575 @optional
00576 
00586 - (void)mapView:(MBMapView *)mapView regionWillChangeAnimated:(BOOL)animated;
00587 
00597 - (void)mapView:(MBMapView *)mapView regionDidChangeAnimated:(BOOL)animated;
00598 
00607 - (void)mapViewWillStartLoadingMap:(MBMapView *)mapView;
00608 
00617 - (void)mapViewDidFinishLoadingMap:(MBMapView *)mapView;
00618 
00628 - (void)mapViewDidFailLoadingMap:(MBMapView *)mapView withError:(NSError *)error;
00629 
00644 - (MBAnnotationView *)mapView:(MBMapView *)mapView viewForAnnotation:(id <MBAnnotation>)annotation;
00645 
00654 - (void)mapView:(MBMapView *)mapView didAddAnnotationViews:(NSArray *)views;
00655 
00668 - (void)mapView:(MBMapView *)mapView annotationView:(MBAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control;
00669 
00678 - (void)mapView:(MBMapView *)mapView didSelectAnnotationView:(MBAnnotationView *)view;
00679 
00688 - (void)mapView:(MBMapView *)mapView didDeselectAnnotationView:(MBAnnotationView *)view;
00689 
00697 - (void)mapViewWillStartLocatingUser:(MBMapView *)mapView;
00698 
00706 - (void)mapViewDidStopLocatingUser:(MBMapView *)mapView;
00707 
00717 - (void)mapView:(MBMapView *)mapView didUpdateUserLocation:(MBUserLocation *)userLocation;
00718 
00725 - (void)mapView:(MBMapView *)mapView didFailToLocateUserWithError:(NSError *)error;
00726 
00737 - (void)mapView:(MBMapView *)mapView annotationView:(MBAnnotationView *)view didChangeDragState:(MBAnnotationViewDragState)newState 
00738    fromOldState:(MBAnnotationViewDragState)oldState;
00739 
00749 - (MBOverlayView *)mapView:(MBMapView *)mapView viewForOverlay:(id <MBOverlay>)overlay;
00750 
00759 - (void)mapView:(MBMapView *)mapView didAddOverlayViews:(NSArray *)overlayViews;
00760 
00761 @end
 全部  函数 变量 属性