• IOSUIDatePicker/时间选取器 实例以及时区的选择


    UIDatePicker 其实就是时间选取器,在IOS开发的过程中用到的非常多。

    1.首先将Date Picker 以及 Round Rect Button拖动到 xib窗口中。

    2.在controller.h中实现如下

    #import <UIKit/UIKit.h>

    @interface CRViewController : UIViewController

    {

        UIDatePicker * datePicker;

    }

    @property(retain,nonatomic) IBOutletUIDatePicker * datePicker;

    -(IBAction) buttonPressed;

    @end

    3.在 controller.m中实现如下

    @synthesize datePicker;

    -(IBAction)buttonPressed

    {

        NSDate * selected = [self.datePicker date];

        NSString * message = [[NSString alloc] initWithFormat:@"time is %@" , selected];

        UIAlertView * alert = [[UIAlertViewalloc] initWithTitle:@"YOU"message:message delegate:nilcancelButtonTitle:@"OK"otherButtonTitles:nil ,nil];

        [alert show];

        [alert release];

        [message release];

    }

    - (void)viewDidLoad

    {

        [superviewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

        

        NSDate * now = [[NSDate alloc] init];

        [datePickersetDate:now animated:NO];

        [now release];

    }

    4.然后设置button的出发事件为buttonPressed,date picker的输出口为 datePicker

    5.运行程序,选择事件,点击button,会发现好像“小时”显示的跟我们选择的是不一样的,这就设计到一个“时区”问题。

    如果没有设置特点的时区,那系统使用的就是标准的0时区,而我们使用的是+8时区,所以需要对代码进行如下修改。

    @synthesize datePicker;

    -(IBAction)buttonPressed

    {

        NSDate * selected = [self.datePicker date];

        NSDateFormatter * dateFormatter = [[NSDateFormatter alloc] init];

        [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm +0800"];

        NSString * message = [dateFormatter stringFromDate:selected];

        UIAlertView * alert = [[UIAlertViewalloc] initWithTitle:@"YOU"message:message delegate:nilcancelButtonTitle:@"OK"otherButtonTitles:nil ,nil];

        [alert show];

         [alert release];

        [dateFormatter release];

    }

    上面的代码对时间显示的格式以及时区进行了设定,运行后发现显示符合我们的要求。

  • 相关阅读:
    [NOI2018]归程 kruskal重构树
    [NOIP2017]逛公园 最短路图 拓扑序DP
    [bzoj4398] 福慧双修 最短路 二进制分组
    【HDOJ】【4405】Aeroplane chess飞行棋
    【ZOJ】【3329】One Person Game
    【POJ】【2096】Collecting Bugs
    【BZOJ】【3093】【FDU校赛2012】A Famous Game
    【BZOJ】【3143】【HNOI2013】游走
    【UVA】【10828】随机程序
    【UVA】【11762】Race to 1(得到1)
  • 原文地址:https://www.cnblogs.com/rollrock/p/2785596.html
Copyright © 2020-2023  润新知