ios開發之NavBar和TarBar提示,

來源:互聯網
上載者:User

ios開發之NavBar和TarBar提示,

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://*"]];

https://itunes.apple.com/cn/app/qq-2012/id444934666?mt=8 

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]




聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.