<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Sealyu

    --- 博客已遷移至: http://www.sealyu.com/blog

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      618 隨筆 :: 87 文章 :: 225 評論 :: 0 Trackbacks

    Here is a great way to ask your users to input dates on your iPhone app.

    When you use UIDatePicker in your app you will a tumbler that lets users select a date that you may use in other parts of your app.

    In order to use UIDatePicker you will need to implement the UIPickerViewDelegate delegate and then add a UIPicker to your subview. To retrieve the date that the user inputs you can use the target-action pattern to assign a method to execute once the user has picked a date. See the video below:

    Here is the code from the example:

    Implement the UIDatePickerView Delegate

    The first thing we needed to do was indicate that our view controller would be acting as a delegate for the UITextField. To do this you simply need to declare it in the interface file:

    #import <UIKit/UIKit.h>
    //UIPicker requires an object that adopts the UIPickerViewDelegate protocol
    @interface DatePicker : UIViewController<UIPickerViewDelegate> {
    }
    @end

    Add the UILabel and UIDatePicker Objects

    This part is straightforward enough: you essentially create a label and a date picker and add them both to the view controller’s subview collection. This is the typical pattern used to build up a view in code.

    #import "DatePicker.h"
    @implementation DatePicker
    UILabel *label;
    UIDatePicker *datePicker;
    - (void)viewDidLoad {
    [super viewDidLoad];
    //Create label
    label = [[UILabel alloc] init];
    label.frame = CGRectMake(10, 10, 300, 40);
    label.textAlignment = UITextAlignmentCenter;
    //Use NSDateFormatter to write out the date in a friendly format
    NSDateFormatter *df = [[NSDateFormatter alloc] init];
    df.dateStyle = NSDateFormatterMediumStyle;
    label.text = [NSString stringWithFormat:@"%@",
    [df stringFromDate:[NSDate date]]];
    [df release];
    [self.view addSubview:label];
    [label release];
    // Initialization code
    datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 250, 325, 250)];
    datePicker.datePickerMode = UIDatePickerModeDate;
    datePicker.hidden = NO;
    datePicker.date = [NSDate date];
    [datePicker addTarget:self
    action:@selector(changeDateInLabel:)
    forControlEvents:UIControlEventValueChanged];
    [self.view addSubview:datePicker];
    [datePicker release];
    }
    - (void)dealloc {
    [datePicker release];
    [label release];
    [super dealloc];
    }
    @end

    Implement Your Action Method

    This is the method that you assigned to the UIControlEventValueChanged event above using the target-action pattern.

    - (void)changeDateInLabel:(id)sender{
    //Use NSDateFormatter to write out the date in a friendly format
    NSDateFormatter *df = [[NSDateFormatter alloc] init];
    df.dateStyle = NSDateFormatterMediumStyle;
    label.text = [NSString stringWithFormat:@"%@",
    [df stringFromDate:datePicker.date]];
    [df release];
    }
    

    How this works is that when the user stops manipulating the tumbler an event called UIControlEventValueChanged occurs. Since we assigned the changeDateInLabel method as an action for this event the code in that method will execute updating the date in the label.

    Time To Take Action!

    Learning how to program is 5% reading and 95% action so the best way to learn is to do it yourself. Create a simple iPhone app that uses the date picker code.

    Let us know how it goes in the comments below!

    posted on 2010-10-04 22:26 seal 閱讀(502) 評論(0)  編輯  收藏 所屬分類: iPhone
    主站蜘蛛池模板: 亚洲冬月枫中文字幕在线看| 免费观看的a级毛片的网站| 国产免费131美女视频| 中国亚洲呦女专区| 无人在线观看完整免费版视频 | 牛牛在线精品免费视频观看| 久久不见久久见中文字幕免费| 亚洲av成人一区二区三区| 成人黄色免费网址| 久久精品国产亚洲AV忘忧草18| aa级一级天堂片免费观看| 亚洲字幕AV一区二区三区四区| 日韩成人免费视频播放| 国产99久久亚洲综合精品| 亚洲国产精品国产自在在线| aa午夜免费剧场| 国产亚洲精品自在久久| 99久久精品免费视频| 亚洲jjzzjjzz在线观看| 色www永久免费视频| 免费又黄又爽又猛大片午夜| 亚洲欧洲日产国码无码久久99| 久久免费精彩视频| 亚洲人成免费电影| 国产免费牲交视频| 中文成人久久久久影院免费观看 | 亚洲专区一路线二| 国产yw855.c免费视频| 中文字幕免费在线看电影大全 | 亚洲国产黄在线观看| 水蜜桃视频在线观看免费播放高清| 亚洲成色999久久网站| 成全影视免费观看大全二| 免费观看亚洲人成网站| 亚洲国产精品无码专区影院| 日韩欧毛片免费视频| 日韩精品无码免费视频| 久久久久亚洲AV无码专区体验| 午夜视频在线观看免费完整版| 久久一区二区免费播放| 亚洲综合在线成人一区|