分享

ios开发之NavBar和TarBar使用技巧

 千锋程序员笔记 2015-08-06
ios开发之NavBar和TarBar使用技巧选自(http://www./

1、改变NavBar颜色:选中Navigation Bar 的Tint属性。选中颜色。
  
2、隐藏“back”按钮: self.navigationItem.hidesBackButton = YES;  

3、隐藏"NavBar" : self.navigationController.navigationBarHidden = YES;  

4、可以不用MainWindow.xib创建的Navigation。在每个view上自定义。  
需要把每个控制页都加上以下代码来隐藏nav:  -(void)viewWillAppear:(BOOL)animated  {  
self.navigationController.navigationBarHidden = YES;//显示"NavBar"  }  
然后在每个控制页xib自己添加Navigation Bar。添加所需BarButtonItem按钮。 
 
5、页面跳转隐藏tarbar :  
HomeDetailViewController *detailview = [[HomeDetailViewController alloc] initWithNibName:@"HomeDetailView" bundle:nil];  
detailview.hidesBottomBarWhenPushed = YES;//隐藏tarbar  
[self.navigationController pushViewController:detailview animated:YES];  [detailview     release]; 
 
6、页面返回:  
[self.navigationController popViewControllerAnimated:YES];  

7、 默认选中tabbar为第一个view:  TabBarController.selectedIndex= 0;  

8、已知两地经纬度 计算两地之间的距离:  //    地图显示当前位置:  
    mapView.showsUserLocation=YES;  
    CLLocationManager *locationManager = [[CLLocationManager alloc] init];//创建位置管理器  
    locationManager.delegate=self;//设置代理  
    locationManager.desiredAccuracy=kCLLocationAccuracyBest;//指定需要的精度级别为最佳精度  
    locationManager.distanceFilter=1000.0f;//设置距离筛选器为任何移动都要发送更新  
    [locationManager startUpdatingLocation];//启动位置管理器      MKCoordinateSpan theSpan;      //地图的范围 越小越精确      theSpan.latitudeDelta=0.05;      theSpan.longitudeDelta=0.05;      MKCoordinateRegion theRegion;  
    theRegion.center=[[locationManager location] coordinate];      theRegion.span=theSpan;      [mapView setRegion:theRegion];      [locationManager release];       
    MKUserLocation *usrLoc=mapView.userLocation;  
    CLLocationCoordinate2D usrCoordinate=usrLoc.location.coordinate;      NSLog(@"la==%f lo==%f",usrCoordinate.latitude,usrCoordinate.longitude);       
//   已知两点的经纬度,计算出两地距离:      
CLLocation 
*location1 
[[[CLLocation 
alloc] 
initWithLatitude:usrCoordinate.latitude longitude:usrCoordinate.longitude] 
autorelease]; 
 CLLocation *location2 = [[[CLLocation alloc] initWithLatitude:36.676445 longitude:117.106793] autorelease];   
  
NSLog(@"JULI====%.0f 
km", 
[location1 
distanceFromLocation:location2]);//4502  

9、取小数点后两位(四舍五入),输出:  NSLog(@"%.02f km",4478.442312);
  
10、调用打电话API :  [[UIApplication 
sharedApplication] 
openURL:[NSURL 
URLWithString:@"tel://10010"]];  
使用这种方式拨打电话时,当用户结束通话后,iphone界面会停留在电话界面。  用如下方式,可以使得用户结束通话后自动返回到应用:  UIWebView*callWebview =[[UIWebView alloc] init];  NSURL *telURL =[NSURL URLWithString:@"tel:10086"];// 貌似tel:// 或者 tel: 都行  
 [callWebview loadRequest:[NSURLRequest requestWithURL:telURL]];      //记得添加到view上  
 [self.view addSubview:callWebview]; 
 
11、调用 SMS发短信:  [[UIApplication 
sharedApplication] 
openURL:[NSURL 
URLWithString:@"sms://15315310992"]];  

12、调用自带 浏览器 safari  [[UIApplication 
sharedApplication] 
openURL:[NSURL 
URLWithString:@"http://www.baidu.com"]]; 
 
13、在一个程序里打开另一个程序:  
首先:plist里添加URL types   点开里边的Item0  添加URLSchemes  打开Item0 输入sinaWeibo  
然后在需要调用的地方:[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"sinaWeibo://*"]]; 

14、双引号转义:  用 \" 表示 双引号 
 
15、设置按钮按下换图片 松开还是原图  //    
[danxuan 
setImage:[UIImage 
imageNamed:@"exercise_option_n.png"] forState:UIControlStateNormal];    //这个是设置按下的图片,松开就是上面的图片  
//        [danxuan setImage:[UIImage imageNamed:@"exercise_option_s.png"] forState:UIControlEventTouchDragOutside];  

16、判断数组中是否存在某元素:  
BOOL isValue=[keyArray containsObject:@"aaa"];  
17 Nav添加button  
UIButton *btnBack = [ABUtil createNavigationCtrollerRoundedRectBtn:Localized(@"取消")];  
    [btnBack addTarget:self  
                action:@selector(tapLeftBarButton)        forControlEvents:UIControlEventTouchUpInside];    
UIBarButtonItem 
*leftBarButtonItem 
[[UIBarButtonItem 
alloc] 
initWithCustomView:btnBack];  
    self.navigationItem.leftBarButtonItem = leftBarButtonItem;      [btnBack release];      [leftBarButtonItem release]

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多