不管是電腦還是手機,都需要有一個日常必備的功能,時間這個功能是日常都必備的,在IOS開發中要怎么使用這些功能呢?下面就讓武林技術頻道小編帶你簡單介紹iOS中控件的使用吧。
一、Date Picker控件
1.簡單介紹:
Date Picker顯示時間的控件
有默認寬高,不用設置數據源和代理
如何改成中文的?
(1)查看當前系統是否為中文的,把模擬器改成是中文的
(2)屬性,locale選擇地區
如果默認顯示不符合需求。時間有四種模式可以設置,在model中進行設置
時間可以自定義(custom)。
設置最小時間和最大時間,超過就會自動回到最小時間。
最大的用途在于自定義鍵盤:彈出一個日期選擇器出來,示例代碼如下:
?
?2.示例代碼
?
#import "YYViewController.h"
@interface YYViewController ()
/**
?*? 文本輸入框
?*/
@property (strong, nonatomic) IBOutlet UITextField *textfield;
@end
?
?
?
- (void)viewDidLoad
{
??? [super viewDidLoad];
??? //1
??? //添加一個時間選擇器
??? UIDatePicker *date=[[UIDatePicker alloc]init];
??? /**
???? *? 設置只顯示中文
???? */
??? [date setLocale:[NSLocale localeWithLocaleIdentifier:@"zh-CN"]];
??? /**
???? *? 設置只顯示日期
???? */
??? date.datePickerMode=UIDatePickerModeDate;
//??? [self.view addSubview:date];
???
??? //當光標移動到文本框的時候,召喚時間選擇器
??? self.textfield.inputView=date;
???
??? //2
??? //創建工具條
??? UIToolbar *toolbar=[[UIToolbar alloc]init];
??? //設置工具條的顏色
??? toolbar.barTintColor=[UIColor brownColor];
??? //設置工具條的frame
??? toolbar.frame=CGRectMake(0, 0, 320, 44);
???
??? //給工具條添加按鈕
??????? UIBarButtonItem *item0=[[UIBarButtonItem alloc]initWithTitle:@"上一個" style:UIBarButtonItemStylePlain target:self action:@selector(click) ];
???
??????? UIBarButtonItem *item1=[[UIBarButtonItem alloc]initWithTitle:@"下一個" style:UIBarButtonItemStylePlain target:self action:@selector(click)];
???
??????? UIBarButtonItem *item2=[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
??????? UIBarButtonItem *item3=[[UIBarButtonItem alloc]initWithTitle:@"完成" style:UIBarButtonItemStylePlain target:self action:@selector(click)];
???
???? toolbar.items = @[item0, item1, item2, item3];
??? //設置文本輸入框鍵盤的輔助視圖
??? self.textfield.inputAccessoryView=toolbar;
}
-(void)click
{
??? NSLog(@"toolbar");
}
@end
實現效果:
?
?
?
二、UITool Bar
在上面可以添加子控件TOOLBAR中只能添加UIBarButtonItem子控件,其他子控件會被包裝秤這種類型的
上面的控件依次排放(空格————)
有樣式,可以指定樣式(可拉伸的),一般用來做工具欄。
?
使用toolbar做點菜的頭部標題
如何讓點菜系統居中?在ios6中是正的,在ios7中是歪的
在自定義鍵盤上加上一個工具欄。
數組里什么順序放的,就按照什么順序顯示
? toolbar.items = @[item0, item1, item2, item3];
??? //設置文本輸入框鍵盤的輔助視圖
??? self.textfield.inputAccessoryView=toolbar;
好,讓我們仔細來看一下UITool Bar的用法。
1.首先,我們看一下UIBbarButtonItem有哪些初始化方法,這也可以看出,它可以被定義為什么東東,然后加到UIToolBar上面去。
根據SDK的文檔,我們可以發現UIBarButtonItem有如下幾種初始化的方法:
?
-initWithImage
-initWithBarButtonSystemItem(添加系統自定義的button,形狀跟大小都已經固定了)下面鏈接里面有按鈕圖片樣式
https://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIBarButtonItem_Class/Reference/Reference.html
-initWithCustomView(添加除了button以外的View)
第4種方法就是我們添加各種作料的接口,所以今天的主角其它也是它。
?
2.在UIToolBar上面添加Title
?
UIToolbar *myToolBar = [[UIToolbar alloc] initWithFrame:?
??????????????????????????????????????????????????? CGRectMake(0.0f, 0.0f, 320.0f, 44.0f)];?
?????????????????????????????????????????????????????
NSMutableArray *myToolBarItems = [NSMutableArray array];?
[myToolBarItems addObject:[[[UIBarButtonItem alloc]?
??????????????????????????????????????????????????????? initWithTitle:@"myTile"??
??????????????????????????????????????????????????????? style:UIBarButtonItemStylePlain??
??????????????????????????????????????????????????????? target:self??
??????????????????????????????????????????????????????? action:@selector(action)] autorelease]];?
[myToolBar setItems:myToolBarItems animated:YES];?
[myToolBar release];?
[myToolBarItems];????????????????????????????????????????????????????????
?
?
setItems傳入值或者說items是一個對象數組。
3.在UIToolBar上面添加image
?
[myToolBarItems addObject:[[[UIBarButtonItem alloc]?
??????????????????????????????????????? initWithImage:[UIImage imageNamed:@"myImage.png"]??
??????????????????????????????????????? style:UIBarButtonItemStylePlain??
??????????????????????????????????????? target:self??
??????????????????????????????????????? action:@selector(action)]];??
4.在UIToolBar上面添加SystemItem
[myToolBarItems addObject:[[[UIBarButtonItem alloc]?
??????????????????????????????????????? initWithBarButtonSystemItem:UIBarButtonSystemItemPlay??
??????????????????????????????????????? target:self??
??????????????????????????????????????? action:@selector(action)] autorelease]];??
Note:
?
initWithBarButtonSystemItem初始化:
?
Defines system defaults for commonly used items.
typedef enum {?
??? UIBarButtonSystemItemDone,?
??? UIBarButtonSystemItemCancel,?
??? UIBarButtonSystemItemEdit,?
??? UIBarButtonSystemItemSave,?
??? UIBarButtonSystemItemAdd,?
??? UIBarButtonSystemItemFlexibleSpace,?
??? UIBarButtonSystemItemFixedSpace,?
??? UIBarButtonSystemItemCompose,?
??? UIBarButtonSystemItemReply,?
??? UIBarButtonSystemItemAction,?
??? UIBarButtonSystemItemOrganize,?
??? UIBarButtonSystemItemBookmarks,?
??? UIBarButtonSystemItemSearch,?
??? UIBarButtonSystemItemRefresh,?
??? UIBarButtonSystemItemStop,?
??? UIBarButtonSystemItemCamera,?
??? UIBarButtonSystemItemTrash,?
??? UIBarButtonSystemItemPlay,?
??? UIBarButtonSystemItemPause,?
??? UIBarButtonSystemItemRewind,?
??? UIBarButtonSystemItemFastForward,?
??? UIBarButtonSystemItemUndo,??????? // iPhoneOS 3.0?
??? UIBarButtonSystemItemRedo,??????? // iPhoneOS 3.0?
} UIBarButtonSystemItem;?
5.在UIToolBar上面添加其它各種控件,最自由意義,最有意思的,我把它放在最后來講。我們使用initWithCustomView來完成,
?
這里需要看一下initWithCustomView的定義:
可以看出,它的參數是一個VIEW,所以我們給它的配料要正確哦才行哦,否則,你就等著時間DIDADIDA的流失吧.
?
A>加一個開關switch:
?
??????????????????????????????? initWithCustomView:[[[UISwitch alloc] init] autorelease]]?
??????????????????????????????????? autorelease]];?
B>加一個按鈕UIBarButtonItem
?
?
?
???????????????????????????????? initWithTitle:@"myButton"?
???????????????????????????????? style:UIBarButtonItemStyleBordered?
???????????????????????????????? target:self??
???????????????????????????????? action:@selector(action)]autorelease];?
get1Button.width = 50;?
[myToolBarItems addObject:myButton];?????
C>加一個文本Label
?
?
?
UILabel *myLabel = [[UILabel alloc] initWithFrame:CGRectMake(40.0f, 20.0f, 45.0f, 10.0f)];?
myLabel.font=[UIFont systemFontOfSize:10];?
//myLabel.backgroundColor = [UIColor clearColor];?
//myLabel.textAlignment=UITextAlignmentCenter;?
UIBarButtonItem *myButtonItem = [[UIBarButtonItem alloc]initWithCustomView:myLabel];?
[myToolBarItems addObject: myButtonItem];????
[mylabel release];?
[myButtonItem release];?
?
?
D>加一個進度條UIProgressView
?
UIBarButtonItem *myButtonItem = [[UIBarButtonItem alloc]initWithCustomView:myProgress];?
[myToolBarItems addObject: myButtonItem];?
[myProgress release];????????????????????????????????????????????
[myButtonItem release];?
可以加使用initWithCustomView制作各種button,這里就不在這里一個一個在加了。我想你應該也已經掌握了如何添加各種buttonItem的方法了。
上文是簡單介紹iOS中控件的使用的全部內容,大家了解了多少呢?感興趣的朋友可以繼續關注武林技術頻道,和小編一起學習進步吧!
新聞熱點
疑難解答