1. 程式人生 > >iOS:選擇器控制元件UIPickerView的詳解和演示

iOS:選擇器控制元件UIPickerView的詳解和演示

#import "ViewController.h"
  2 
  3 @interface ViewController ()
  4 @property (weak, nonatomic) IBOutlet UIPickerView *pickerView;
  5 
  6 @end
  7 
  8 @implementation ViewController
  9 
 10 - (void)viewDidLoad
 11 {
 12     [super viewDidLoad];
 13     //初始化資料
 14     NSMutableArray *multYears = [NSMutableArray array];//
15 for(int i=0; i<20; i++) 16 { 17 NSString *year = [NSString stringWithFormat:@"20%02d年",i+1]; 18 [multYears addObject:year]; 19 } 20 self.years = multYears; 21 22 NSMutableArray *multMonths = [NSMutableArray arrayWithCapacity:12];// 23 for
(int i=1; i<=12; i++) 24 { 25 NSString *month = [NSString stringWithFormat:@"%d月",i]; 26 [multMonths addObject:month]; 27 } 28 self.months = multMonths; 29 30 NSMutableArray *multDays = [NSMutableArray arrayWithCapacity:31];// 31 for(int i=1; i<=31
; i++) 32 { 33 NSString *day = [NSString stringWithFormat:@"%d日",i]; 34 [multDays addObject:day]; 35 } 36 self.days = multDays; 37 38 39 //設定pickerView的資料來源和代理 40 self.pickerView.dataSource = self; 41 self.pickerView.delegate = self; 42 43 //顯示當前日期 44 NSDate *now = [NSDate date]; 45 //分解日期 46 NSCalendar *calendar = [[NSCalendar alloc]initWithCalendarIdentifier:NSCalendarIdentifierGregorian]; 47 48 NSCalendarUnit unitFlags = NSCalendarUnitYear|NSCalendarUnitMonth|NSCalendarUnitDay; 49 NSDateComponents *components = [calendar components:unitFlags fromDate:now]; 50 51 52 //設定pickerView顯示當前日期 53 NSInteger year = [components year]; 54 [self.pickerView selectRow:year-2000-1 inComponent:0 animated:year]; 55 56 NSInteger month = [components month]; 57 [self.pickerView selectRow:month-1 inComponent:1 animated:month]; 58 59 NSInteger day = [components day]; 60 [self.pickerView selectRow:day-1 inComponent:2 animated:day]; 61 } 62 63 #pragma mark - pickerView的代理方法 64 -(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView 65 { 66 return 3; 67 } 68 -(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component 69 { 70 NSInteger row = 0; 71 switch (component) 72 { 73 case 0: 74 row = self.years.count; 75 break; 76 case 1: 77 row = self.months.count; 78 break; 79 case 2: 80 row = self.days.count; 81 break; 82 } 83 return row; 84 } 85 86 -(NSString*)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component 87 { 88 NSString *title; 89 switch (component) 90 { 91 case 0: 92 title = self.years[row]; 93 break; 94 case 1: 95 title = self.months[row]; 96 break; 97 case 2: 98 title = self.days[row]; 99 break; 100 } 101 return title; 102 } 103 -(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component 104 { 105 NSString *strDate = [NSString stringWithFormat:@"%@-%@-%@", 106 self.years[[pickerView selectedRowInComponent:0]], 107 self.months[[pickerView selectedRowInComponent:1]], 108 self.days[[pickerView selectedRowInComponent:2]]]; 109 NSLog(@"%@",strDate); 110 } 111 @end

相關推薦

iOS:選擇控制元件UIPickerView演示

#import "ViewController.h" 2 3 @interface ViewController () 4 @property (weak, nonatomic) IBOutlet UIPickerView *pickerView; 5 6 @end

iOS學習十二之選擇控制元件UIPickerView

UIPickerView是一個簡易的列表控制元件,用於提供有限個數的選項供使用者選擇。 它是通過代理和資料來源的方法對其進行設定和資料來源填充的,這種控制元件的設計模式也是代理模式的應用之一。 新增下面的程式碼即可實現基本功能。 class ViewController: UIViewControlle

iOS控制元件——UITableView

iOS開發中經常會用到UITableView,我們平時使用的軟體中到處都可以看到它,比如微信、QQ、微博等軟體基本上隨處都是UITableView。最主要到還有iOS設定。 一  基本介紹 UITableView有兩種Style:UITableViewStylePlain和

【jQuery】方法選擇的雙重使用

節點 使用詳解 選擇器 query 除了 nbsp clas pos ren 1.jQuery選擇直接子節點+除了某個元素   1》方法 $(".begon").children(".row:not(.moreDetail)")   2》選擇器 $(".begon

android開發之wheel控制元件使用

出門在外生不起病呀,隨便兩盒藥60多塊錢。好吧,不廢話了,今天我們來看看wheel控制元件的使用,這是GitHub上的一個開源控制元件,用起來十分方便,我們可以用它做許多事情,比如做一個自定義的datepicker,在一些電商App中,經常用它來做省市縣三級聯動,總之用途還是

日曆控制元件--MaterialCalendarView

專案中遇到了日曆選擇的模組,經過搜尋,發現了一個比較好用的日曆控制元件MaterialCalendarView 下面講講它的基本用法. 首先對他新增依賴 compile 'com.prolificinteractive:material-calenda

FileUpload上傳控制元件用法--來自MSDN幫助文件

Visual Basic  複製程式碼 <%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD

MFC控制元件:listbox控制元件用法

ListBox的操作比較簡單 1新增資料 宣告控制元件變數的類別為Control,變數型別為CListBox,變數名為m_ListBox_Content. m_ListBox_Content.AddString(_T("123")); m_ListBox_Content.AddString(_T("漢字")

java Swing 時間選擇控制元件

效果圖: 中的 flowlayout_v.jar 檔案 示例程式碼: HongYeLingGuDate類 import java.awt.Color; import java.awt.Dimension; import java.awt.Flow

Android開發之狀態選擇(selector)

這些天博主的專案進度比較快,現在伺服器那端進度較慢,所以博主晚上最近會比較有時間,所以最近會多寫些部落格出來和大家分享~希望能夠幫助到大家。 所謂狀態選擇器,就是控制元件(view或者viewgroup)的狀態發現變化的時候,我們可以再指定的狀態下,切換控制元件的背景屬性(

串列埠通訊-MSComm控制元件使用

ComPort屬性:設定並返回通訊埠號。語法 object.CommPort[value ] (value 一整型值,說明埠號。) 說明 在設計時,value 可以設定成從 1 到 16 的任何數(預設值為 1)。但是如果用 PortOpen 屬性開啟一個並不存在的埠時,MSComm 控制元件會產生錯誤 68

Gridview控制元件使用

//一載入就填充Gridview控制元件    public void Bin()    {        string strsql = "select id,title,context,datet From db_guanggao";        com = new S

CSS選擇——cssSelector定位方式

基本css選擇器CSS選擇器中,最常用的選擇器如下:選擇器描述舉例*通配選擇器,選擇所有的元素*<type>選擇特定型別的元素,支援基本HTML標籤h1.<class>選擇具有特

listbox控制元件用法

ListBox基本功能首先是列表項的新增,客戶端實現程式碼新增在listbox例項化程式碼中間,例如: <asp:ListItem Value="value" Selected=True>Text</asp:ListItem> 若在伺服器端實現,為避免每次載入時執行新增列表項,上述程式

android自定義控制元件屬性

1. reference:參考某一資源ID。      (1)屬性定義:               <declare-styleable name = "名稱">                    <attr name = "background"

Android原生控制元件---ActionBar

昨天去面試了,第一次出去面試,被問到好幾個我不好回答上來的題,例如OOM的處理啊,AndroidStudio的gradle配置,actionBar的使用,ViewPager 巢狀ViewPager等等

Android CardView的使用(RecycView一樣5.0以後出現的控制元件)

一、引入CardView    CardView和 RecyclerView 一樣是Android5.0以後新出現的控制元件,伴隨著Material Design設計而誕生。   在AS新建專案中需要使用CardView元件

IOS學習 iPad控制元件:POP控制元件,分割視窗、浮動視窗、模態檢視的使用

@implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptio

Objective-C-iOS常用小控制元件(UIStepper)計數器/步進

//UIStepper計數器/步進器 - (void)createStepper{ //建立計數器 UIStepper *stepper=[[UIStepperalloc]init];

iOS開發-UI控制元件:UIDatePicker日期/時間選取(滾輪)

文章轉自: http://justcoding.iteye.com/blog/1473352 UIDatePicker 是一個控制器類,封裝了 UIPickerView,但是他是UIControl的子類,專門用於接受日期、時間和持續時長的輸入。日期選取器的各列會按照指定