你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> 二 :ios學習筆記 控件、全屏及動畫

二 :ios學習筆記 控件、全屏及動畫

編輯:IOS開發綜合

1、控件

 ------------------------
控件的名字 

#pragma mark -
#pragma mark UIImageView的聲明
	IBOutlet UIImageView *viewImg;
	
#pragma mark -
#pragma mark UIActivityIndicatorView (指示器)的聲明
	
	IBOutlet UIActivityIndicatorView *activity;
#pragma mark -
#pragma mark UIProgressView的聲明
	IBOutlet UIProgressView *progress;
#pragma mark -
#pragma mark UISwitch的聲明
	IBOutlet UISwitch *sw;
#pragma mark -
#pragma mark UISegmentedControl的聲明
    IBOutlet	UISegmentedControl *segment;
#pragma mark -
#pragma mark UISlider的聲明
	IBOutlet UISlider *slider;
-------------------------
- (void)viewDidLoad {
    [super viewDidLoad];
	
	self.view.backgroundColor=[UIColor redColor];
	[self createImageView];
	[self setButtonBG];
	self.view.frame = [[UIScreen mainScreen] applicationFrame];//得到屏幕的對象 並得到屏幕的窗口的大小 之後賦給本視圖的 大小     
	
// 時間控制器  每隔一定的時間去執行某個方法

timer=[NSTimer 
		   scheduledTimerWithTimeInterval:.1 
		   target:self 
		   selector:@selector(progressChange) 
		   userInfo:@"進度測試 " 
		   repeats:YES];
	
	
	//讓圓形進度條轉動
	
	
	
	[activity startAnimating];//開始效果
	//self.view.frame=CGRectMake(0, 0, 320, 480);
}
-----------------
#pragma mark -
#pragma mark 圖片添加方法 
-(void)initViewByImage{
	UIImage *image=[UIImage imageNamed:@"Email_04.png"];
	UIImage *newImg=[image stretchableImageWithLeftCapWidth:20 topCapHeight:20];//圖片拉伸
	//UIImage *newImg2=[image stretchableImageWithLeftCapWidth:100 topCapHeight:100];
	viewImg.image=newImg;


}
-------------------
#pragma mark -
#pragma mark 指示器對應方法
-(void)activityChange{
	[activity startAnimating];//指示器開始旋轉

}
------------------

#pragma mark -
#pragma mark 指示器對應方法
-(void)activityChange{
	[activity startAnimating];//指示器開始旋轉

}
-------------------
#pragma mark -
#pragma mark 開關按鈕對應的方法 UISwitch控件事件的調用方法

-(IBAction)switchChange:(id)sender{
	
	UISwitch  *swi=(UISwitch *)sender;
	BOOL ison=swi.on;
	//[sw setOn:ison animated:YES];
	//NSLog(@"==========");
	if (ison) {//開的時候
		NSLog(@"開");[self progressChange];[activity startAnimating];
		
	}else {
		NSLog(@"關");
		[activity stopAnimating];
		//progress.progress=0;
		//[activity stopAnimating];		//......關的 時候
	}

	
}
----------------------
#pragma mark -
#pragma mark 選項卡控件
-(IBAction)segmentChange:(id)sender{
	segment =(UISegmentedControl *)sender;
	int index=segment.selectedSegmentIndex;
	switch (index) {
		case 0:
			
			break;
		case 1:
			//	
			break;
		case 2:
			//	
			break;
		case 3:
			//	
			break;
	
		default:
			break;
	}
	NSLog(@"%d",index);
}
--------------------
#pragma mark -
#pragma mark slider調用的方法
-(IBAction)sliderChange:(id)sender{
	slider=(UISlider *)sender;
	NSLog(@"%f",slider.value);
	
	progress.progress=slider.value;
}
----------------
#pragma mark -
#pragma mark UITextField將虛擬鍵盤取消
-(IBAction)textFieldCancel{
	NSLog(@"=[=======");
	//userNameTextFiled=(UITextField *)sender;
	[userNameTextFiled resignFirstResponder];
	[passWordTextFiled resignFirstResponder];


}
---------------------------------------
//UITabBarController 組建的使用


	LoginButtonViewController *one=[[LoginButtonViewController alloc] initWithNibName:@"LoginButtonViewController" bundle:nil];
	one.tabBarItem.title=@"視圖一";
	one.tabBarItem.image=[UIImage imageNamed:@"Hein22.jpg"];
	//先得到入口類的對象  所謂入口類就是實現過UIApplicationDelegate協議的類
	//app對象是已經存在的  不是再次定義的  
	TwoViewController *two=[[TwoViewController alloc] initWithNibName:@"TwoViewController" bundle:nil ] ;
	two.tabBarItem.title=@" 視圖二";
	two.tabBarItem.image=[UIImage imageNamed:@"21.png"];
	//UITabBarController 組建的使用
	UITabBarController *bar=[[UITabBarController alloc] init];
	NSArray *array=[[NSArray alloc] initWithObjects:one,two,nil];
	//[array ];
	bar.viewControllers=array;
	//bar.selectedIndex=1;
	[apps.window addSubview:bar.view	];//切換view


----------------------------------------------------

2、全屏



--------------------------
全屏代碼演示
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    
    
    // Override point for customization after application launch.
	
	
	//將view的狀態欄隱藏
	UIApplication *app=[UIApplication sharedApplication] ;
	[app setStatusBarHidden:YES];
//YES 表示是將信號欄隱藏
	//self.window.frame = [[UIScreen mainScreen] applicationFrame];//得到屏幕的對象 並得到屏幕的窗口的大小 之後賦給本視圖的大小     

	///////////////////////這行代碼 系統可以幫助自動建立   現在是手動建立 
	window=[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];//這個是將主窗口全屏
//self.view.frame = [[UIScreen mainScreen] applicationFrame];//得到屏幕的對象 並得到屏幕的窗口的大小 之後賦給本視圖?的 大小     
//這個是將視圖全屏 	
	////////////////////
    root=[[RootViewController alloc] initWithNibName:@"RootViewController" bundle:nil];
	[window addSubview:root.view];
    [window makeKeyAndVisible];
    
    return YES;
}
//另一個方法是在XXX-info.plist文件中添加一行 找到Status bar is initially hidden屬性  之後對應的勾選即可 (。。。不要說不會添加啊    汗!!!)
-----------------------------



3、動畫



設置動畫延時執行
[self performSelector:@selector(fade) withObject:self afterDelay:2];
//self 是 UIView
--------------------------------------------------------------------------

-(void)fade
{
	//啟動視圖動畫
	[UIView beginAnimations:nil context:nil];//31為動畫的一個id
	//設置動畫總時間
	[UIView setAnimationDuration:2];
	//如果希望動畫結束的時候能自動調用方法 要有一下方法
//
	[UIView setAnimationDelegate:self];//設置動畫委托 可以調用本地的一個方法
	[UIView setAnimationDidStopSelector:@selector(gotoLoginView)];//設置動畫停止完成之後的調用的方法
	
//這兩個方法是配套的
self.view.alpha=0.3;
	//提交動畫
	[UIView commitAnimations];
	
}
----------------------------------------------
#pragma mark -
#pragma mark 從當前界面切換到登陸界面 並使用動畫旋轉 
-(void)gotoLoginView{
	LoginAppDelegate *app=(LoginAppDelegate *)([[UIApplication sharedApplication] delegate]);//單例模式  獲得系統唯一的對象 此對象可以調用delegate 獲得入口類的對象這個對象是入口類中的那個對象
	LoginViewController *loginView=[[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];

	[UIView beginAnimations:nil context:nil];
	[UIView setAnimationDuration:2];//設置動畫執行時間
	[UIView 
	 setAnimationTransition:UIViewAnimationTransitionCurlDown 
	 forView:app.window cache:YES];	//提交動畫並設置動畫轉換方式 基於window(必須是window 必須是主窗口  動畫是基於window上的 就是說 效      果是發生在window上的  
) 旋轉  
	
	
	//先得到入口類的對象  所謂入口類就是實現過UIApplicationDelegate協議的類
	//app對象是已經存在的  不是再次定義的  
	[app.window addSubview:loginView.view];//切換view
	[self.view removeFromSuperview];//將本視圖 從父窗口中刪除
	[UIView commitAnimations];

}
-------------------------------------------------------------------------------------



  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved