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
----------------------------------------------------
--------------------------
全屏代碼演示
- (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];
}
-------------------------------------------------------------------------------------