0

次の私の目標は、2 つのパスのいずれかを介してポップオーバーを表示することです。

最初は明示的にボタンが押されたとき、2 番目はカウントダウン タイマーが切れたときです。

最初のものは機能しています - ストーリーボード セグエをポップオーバーとして構成し、ボタンに結び付けています。ボタンを押すと、ポップオーバーが表示されます。すごい!

2番目はそうではありません-毎秒-カウントダウンの残り秒数でラベルを更新するメソッドを呼び出すタイマー(NSTimer)があります。カウントダウンがゼロになったら、自動的にポップオーバーを呼び出したいと思います。私は 2 つの方法を試しました。1 つはプログラムでボタンを呼び出す方法です ( [self popoverButton:self])。もう 1 つは次のコードを使用しています。

PopViewController *myPopVC = [[PopViewController alloc] init];
UIStoryboardSegue *aSegue = [[UIStoryboardSegue alloc] initWithIdentifier:@"popoverSegue" source:self destination:myPopVC];
[self prepareForSegue:aSegue sender:self];
[aSegue perform];

これら2つのアプローチはどちらも機能していないため、助けていただければ幸いです。

4

2 に答える 2

0

ストーリーボードにセグエの識別子が設定されていることを確認してから、 performSegueWithIdentifier メソッドを呼び出します。タイマーが切れたときにこれを行う方法の例については、この回答を参照してください。

ユーザーがマップビューでピンをタップしたときに別のビューを呼び出す

于 2012-06-30T21:53:33.333 に答える
0

popOverController のメソッドを使用します。

[pop presentPopoverFromRect:rect inView:self.view permittedArrowDirections: UIPopoverArrowDirectionUp animated:YES];

popOver の矢印が指す位置で CGRect を作成する必要があります。または、ビュー内の任意の UIView の Frame に割り当てることができます。

于 2012-06-30T21:50:51.250 に答える