#pragma mark UIAlertView 的使用方法
-(void)testAlertView
{
//可以輸入用戶名和密碼的輸入框
UIAlertView *alert=[[UIAlertViewalloc]init];
alert.title=@"輸入用戶名和密碼";
//alertViewStyle這個屬性比較重要
/*
UIAlertViewStyleDefault = 0, 表示沒有格式
UIAlertViewStyleSecureTextInput, 安全輸入格式,比如密碼加密
UIAlertViewStylePlainTextInput, 簡單格式
UIAlertViewStyleLoginAndPasswordInput 用戶名和密碼輸入
*/
alert.alertViewStyle=UIAlertViewStyleLoginAndPasswordInput;
[alert addButtonWithTitle:@"取消"];
[alert addButtonWithTitle:@"完成"];
[alert show];
//要實現事件,必須遵守UIAlertViewDelegete代理
alert.delegate=self;
}
//alertView的事件處理
- (void)alertView:(UIAlertView *)alertViewclickedButtonAtIndex:(NSInteger)buttonIndex;
{
//textFieldAtIndex:0 根據索引下標獲取textfield裏面的值
UITextField *nametext=[alertView textFieldAtIndex:0];
UITextField *password=[alertView textFieldAtIndex:1];
NSLog(@"name=%@password=%@",nametext.text,password.text);
}
//附上效果圖
#pragma mark 動作列表的創建
-(void)testActionSheet
{
//實現一個分享的實力,點擊分享,彈出動作列表
UIButton *shareButton=[UIButtonsystemButtonWithFrame:CGRectMake(100, 100, 150, 40) title:@"分享"target:selfaction:@selector(dealshareClick)];
shareButton.backgroundColor=[UIColorgreenColor];
[self.view addSubview:shareButton];
}
#pragma mark 處理點擊按鈕
-(void)dealshareClick
{
UIActionSheet *actionsheet=[[UIActionSheetalloc]initWithTitle:@"分享" delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:nil otherButtonTitles:@"新浪微博",@"微信",@"郵件",@"短信", nil];
[actionsheet showInView:self.view];
}
//處理actionsheet的事件
// 必須遵守actionsheetdelegete協議
//處理這個事件 也必須實現UIActionSheet的代理
-(void)actionSheet:(UIActionSheet*)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
{
//按照下表來處理事件
if (buttonIndex==0) {
}
elseif(buttonIndex==1)
{
}
NSLog(@"%d",buttonIndex);
}
//UIActionSheet的效果圖
#pragma mark 創建文本視圖
//這個文本視圖類似於textfield但是不同的是textfield是單行文本,這是多行文本輸入
-(void)testTextView
{
UITextView *textView=[[UITextViewalloc]initWithFrame:CGRectMake(10, 30, 300, 400)];
//點擊return並不會回收鍵盤 是換行,要想回收,自己添加按鈕
//1.設置文本內容
textView.text=@"盡人事,聽天命,非也非也,我命由我不由天.盡人事,聽天命,非也非也,我命由我不由天.盡人事,聽天命,非也非也,我命由我不由天.盡人事";
//歷史的塵埃(在歷史的天空下,所有人只不過是一粒塵埃)
//2這裏設置背景顏色
textView.backgroundColor=[UIColorgreenColor];
textView.delegate=self;
//回收textview 的鍵盤,
// 1在導航欄上添加完成回收
// 2.在虛擬鍵盤的附件區域添加一個完成按鈕
// 3.添加一個根虛擬鍵盤聯動的按鈕
textView.tag=200;
[self.view addSubview:textView];
//z在鍵盤添加附件區域
UIToolbar *toolbar=[[UIToolbaralloc]initWithFrame:CGRectMake(0, 0, 320, 44)];
// 完成按鈕
UIBarButtonItem*finishItem=[[UIBarButtonItem alloc]initWithTitle:@"完成"style:UIBarButtonItemStylePlain target:self action:@selector(dealtextBtnClik:)];
finishItem.tag=100;
//清空按鈕
UIBarButtonItem*clearItem=[[UIBarButtonItem alloc]initWithTitle:@"清空"style:UIBarButtonItemStylePlain target:self action:@selector(dealtextBtnClik:)];
clearItem.tag=101;
toolbar.items=@[finishItem,clearItem];
//把toolbar 加入到鍵盤的附件區域
//[self.view addSubview: toolbar];
textView.inputAccessoryView=toolbar;
}
#pragma mark這裏在鍵盤附件區域添加事件
-(void)dealtextBtnClik:(UIBarButtonItem*)button
{
UITextView *textView=(UITextView*)[self.view viewWithTag:200];
//等於100的時候,完成
if (button.tag==100) {
[textView resignFirstResponder];
}
elseif(button.tag==101)
{
textView.text=@"";
}
}
#pragma mark 進度條
-(void)testProgressView
{
UIProgressView *progress=[[UIProgressViewalloc]initWithProgressViewStyle:UIProgressViewStyleDefault];
progress.frame=CGRectMake(100, 260, 200,10);
[self.view addSubview:progress];
//屬性的設置
progress.progress=0;
//模擬下載完成
[NSTimer scheduledTimerWithTimeInterval:0.1target:self selector:@selector(downloadprogress:)userInfo:progress repeats:YES];
}
-(void)downloadprogress:(NSTimer*)timer
{
UIProgressView *progress=(UIProgressView*)timer.userInfo;
progress.progress+=0.01;
if (progress.progress>=1.00 ) {
[timer invalidate];
UIAlertView *alert=[[UIAlertViewalloc]init];
alert.message=@"下載好啦";
[alert addButtonWithTitle:@"好的"];
[alert show];
}
}
//效果圖
//計數器控件,一般用在購物app上面,商品的加減
-(void)testStepper
{
//寬度和高度都是固定的
UIStepper *step=[[UIStepperalloc]initWithFrame:CGRectMake(150, 200, 100, 20)];
//常用的屬性的設置
//在購物界面上添加一個輸入商品的計數器
step.minimumValue=1;
step.maximumValue=100;
step.stepValue=1;
[step addTarget:self action:@selector(dealstep:)forControlEvents:UIControlEventValueChanged];
textfield=[[UITextFieldalloc]initWithFrame:CGRectMake(10, 200, 100, 30)];
textfield.borderStyle=UITextBorderStyleRoundedRect;
textfield.text=@"1";
textfield.tag=100;
textfield.delegate=self;
[self.view addSubview:textfield];
[self.view addSubview:step];
}
-(void)dealstep:(UIStepper*)step
{
//step.value
UITextField *text=(UITextField*)[self.view viewWithTag:100];
text.text=[NSString stringWithFormat:@"%i",(int)step.value];
}
//鍵盤迴收,一般所有的textfield控件都需要使用的方法,使用這個方法必須遵守UITextfieldDelegate這個協議
-(BOOL)textFieldShouldReturn:(UITextField*)textField
{
[textfield resignFirstResponder];
returnYES;
}
//效果圖
#pragma mark 分段選擇控件
-(void)testSegmentedControl
{
NSArray *array=@[@"腦殘",@"菊花",@"武士",@"刀",@"小橋"];
UISegmentedControl *sc=[[UISegmentedControlalloc]initWithItems:array];
sc.frame=CGRectMake(10, 100,300, 30);
//設置當前的選擇項
sc.selectedSegmentIndex=1;
[self.view addSubview:sc];
[sc insertSegmentWithTitle:@"瘦馬" atIndex:2 animated:YES];
[sc addTarget:self action:@selector(dealsegmengt:)forControlEvents:UIControlEventValueChanged];
}
#pragma mark 處理分段控件的事件
-(void)dealsegmengt:(UISegmentedControl*)segmented
{
NSLog(@"segmented=%d",segmented.selectedSegmentIndex);
}
#pragma
mark 滑塊控件 一般用在音樂播放器進度控制
-(void)testSlider
{
//創建劃塊控件
UISlider *slider=[[UISlideralloc]initWithFrame:CGRectMake(100, 100, 200, 20)];
//修改長度,但是高度是固定不變的
NSLog(@"sliderwidth=%f and hight=%f",slider.frame.size.width,slider.frame.size.height);
slider.minimumValue=0;
slider.maximumValue=200;
slider.value=100;
//設置背景顏色
slider.tintColor=[UIColor redColor];
[slider addTarget:self action:@selector(dealslider:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview: slider];
}
#pragma mark 滑塊控件的事件
-(void)dealslider:(UISlider*)slider
{
NSLog(@"slider.value=%f",slider.value);
}
#pragma mark 活動提示控件 菊花控件
-(void)activityIndicatorView
{
//UI ActivityIndicatorView 基本使用
UIActivityIndicatorView*activity=[[UIActivityIndicatorViewalloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
activity.center=CGPointMake(160, 240);
[self.view addSubview:activity];
[activity startAnimating];
//模擬數據下載完成的操作
[ NSTimer scheduledTimerWithTimeInterval:3target:self selector:@selector(stopActivityIndicatorView:)userInfo:activity repeats:NO];
}
// 活動提示控件的處理
-(void)stopActivityIndicatorView:(NSTimer*)timer
{
UIActivityIndicatorView*aiv=timer.userInfo;
[aiv stopAnimating];
UIAlertView *alert=[[UIAlertViewalloc]init];
alert.message=@"加載完畢";
[alert addButtonWithTitle:@"確定"];
[alert show];
}
#pragma mark 開關控件的創建
-(void)testSwitch
{
UISwitch *myswicth=[[UISwitchalloc]initWithFrame:CGRectMake(100, 100, 100, 30)];
NSLog(@"%f %f",myswicth.frame.size.width,myswicth.frame.size.height);
[myswicth setOn:YES animated:YES];
//開關控件的簡單設置
//設置狀態
myswicth.on=NO;
myswicth.onTintColor=[UIColor redColor];
myswicth.tintColor=[UIColor greenColor];
myswicth.thumbTintColor=[UIColorblackColor];
//事件處理
[myswicth addTarget:self action:@selector(dealswitch:)forControlEvents:UIControlEventValueChanged];
[self.view addSubview: myswicth];
}
//switch的事件處理
-(void)dealswitch:(UISwitch*)myswitch
{
//關掉爲0 開啓爲1
NSLog(@"%d",myswitch.on);
if (myswitch.on) {
// 處理開啓的任務
}
}