質問

私は(タブバーの上に)画面の下からUIPickerViewスライドを持ってしようとしているが、それは表示するように見えることはできません。アニメーションのための実際のコードは、Appleのサンプルコードプロジェクト(DateCell)のいずれかから来ています。私は、タブバーコントローラの下の最初のビューコントローラ(FirstViewController.m)から、このコードを呼んでいる。

- (IBAction)showModePicker:(id)sender {
if (self.modePicker.superview == nil) {
    [self.view.window addSubview:self.modePicker];

    // size up the picker view to our screen and compute the start/end frame origin for our slide up animation
    //
    // compute the start frame
    CGRect screenRect = [[UIScreen mainScreen] applicationFrame];
    CGSize pickerSize = [self.modePicker sizeThatFits:CGSizeZero];
    CGRect startRect = CGRectMake(0.0, screenRect.origin.y + screenRect.size.height, pickerSize.width, pickerSize.height);
    self.modePicker.frame = startRect;

    // compute the end frame
    CGRect pickerRect = CGRectMake(0.0, screenRect.origin.y + screenRect.size.height - pickerSize.height, pickerSize.width, pickerSize.height);

    // start the slide up animation
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.3];

    // we need to perform some post operations after the animation is complete
    [UIView setAnimationDelegate:self];

    self.modePicker.frame = pickerRect;

    // shrink the vertical size to make room for the picker
    CGRect newFrame = self.view.frame;
    newFrame.size.height -= self.modePicker.frame.size.height;
    self.view.frame = newFrame;
    [UIView commitAnimations];

    // add the "Done" button to the nav bar
    self.navigationItem.rightBarButtonItem = self.doneButton;
}}

たび、このアクション火災UIBarButtonItemを経由して(すべてFirstViewController下にある)UINavigationBarでの生活は何も起こらないことを。缶誰でもいくつかのアドバイスを提供してください?

役に立ちましたか?

解決

私判明はUIPickerViewが動作していることをやって、出口すべてを接続した後...よくとしてInterface Builderで定義されていたことが非常に重要な事実を見逃していた!

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top