ios - 将 ViewController 插入 UINavigationcontroller 堆栈时变黑

标签 ios objective-c uiviewcontroller uinavigationcontroller uidatepicker

我有一个 UINavigationController 堆栈。在 RootViewController 我有按钮。当我单击该按钮时,将推送一个新的 View Controller ,并应显示 UIDatePicker 。问题是导航到 View Controller 时,日期选择器显示 1 秒,然后突然消失,整个屏幕变黑。这是代码

//rootviewcontroller 
- (IBAction)dateAction:(id)sender 
{
    self.another = [[AnotherViewController   alloc]initWithButtonWithTag:self.dateButton.tag andDelegate:self];
    [self.navigationController pushViewController:self.another animated:YES];
    self.another.navigationItem.title = @"DateName";
}



//second viewcontroller

- (void)viewDidload 
{
    self.pickerView = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 250, 325, 300)];
    [self.pickerView addTarget:self action:@selector(datePickerDidChangeDate:)  forControlEvents:UIControlEventValueChanged];

    self.pickerView.datePickerMode = UIDatePickerModeDate;
    self.pickerView.hidden = NO;
    self.pickerView.date = [NSDate date];

    self.formatter = [[NSDateFormatter alloc] init];

    self.formatter.dateStyle = NSDateFormatterLongStyle;

    [self.view addSubview:self.pickerView];
}

如果有帮助,我们将不胜感激

最佳答案

试试这个代码...

第一个 View Controller

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSArray *temp=[NSArray arrayWithObjects:@"button1" ,@"button2" ,@"button3",nil];
    for (int i=0; i<=2; i++)
    {
        _likeBtn=[UIButton buttonWithType:UIButtonTypeCustom];
        [_likeBtn setFrame:CGRectMake(20+(i*80), 220, 102, 20 )];
        [_likeBtn setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];
        [_likeBtn setTitle:[temp objectAtIndex:i] forState:UIControlStateNormal];
        [_likeBtn addTarget:self action:@selector(action:) forControlEvents:UIControlEventTouchUpInside];
        [_likeBtn setTag:i];
        [self.view addSubview:_likeBtn];
    }

    // Do any additional setup after loading the view from its nib.
}
- (IBAction)action:(id)sender

{
    UIButton *button=(UIButton *)sender;
    NSLog(@"%d",button.tag);
    secViewController *obj = [[secViewController alloc]init];
    obj.tagValue=button.tag;
    [self.navigationController pushViewController:obj animated:YES];
    obj.navigationItem.title = @"DateName";
}

第二次查看.h文件

 @property(nonatomic,assign) NSInteger *tagValue;

.m文件

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSInteger *tag=self.tagValue;

    if (tag==0)
    {
        //tableView
        NSLog(@"tableview");
    }
    else
    {
        //datepicker
        NSLog(@"picker");

          self.pickerView = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 250, 325, 300)];
          [self.pickerView addTarget:self action:@selector(datePickerDidChangeDate:)  forControlEvents:UIControlEventValueChanged];
                self.pickerView.datePickerMode = UIDatePickerModeDate;
            self.pickerView.hidden = NO;
           self.pickerView.date = [NSDate date];
          self.formatter = [[NSDateFormatter alloc] init];
            self.formatter.dateStyle = NSDateFormatterLongStyle;
            [self.view addSubview:self.pickerView];
    }

    // Do any additional setup after loading the view from its nib.
}
-(void)datePickerDidChangeDate:(id)sender
{
    NSLog(@"%@",self.pickerView.date);
}

让我知道是否满意...

关于ios - 将 ViewController 插入 UINavigationcontroller 堆栈时变黑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23534064/

相关文章:

objective-c - 帮助我理解 obj-c 类类型

ios - 是否可以在一个屏幕上显示两个 iAd?

ios - 过渡时导航 Controller 下有黑色污迹

objective-c - UIDocument 保存到 URL 失败?

ios - Objective-C - 当我添加一个 subview 时,我的 subview 在底部离开屏幕。对框架的误解?

ios - 我们可以将 UITableView 添加到 Custom UITableViewcell 中吗?

objective-c - 将 AVPlayer 代码转换为 Swift

ios - Storyboard instantiateViewControllerWithIdentifier 返回空 View Controller ?

ios - Swift:在 View 中点击时出现隐藏的导航栏

ios - 在 swift xcode 中通过 View 发送数据