[iPad SDK] Popover中にTableViewを入れて、タップしたらPopoverを閉じたい
公開日:
:
iPad
今作っている リズムくん for iPad で、拍子記号を Popover で選択できるようにしようとしている。
Popover中にTableViewを入れて、タップしたらPopoverを閉じるようにしたい。
検索したら、すぐ stackoverflow の投稿が見つかった。
iphone – Dismiss the pop over when I tap a row in tableview – Stack Overflow
が、これが 2012/06/29 の時点では書きかけのような状態で、とても分かりづらかったのでEditしてみた。
peer reviewされた後に公開されるらしい。どんな人がreviewするのだろう。
stackoverflowの方は元の回答を尊重してそれを修正する形で書いたけれども、こちらには自分のメモをそのまま載せてみる。
Popover中に入れたClassPopDismiss 中で、TableViewのタップをハンドルしてそれを自分を生成したPopOverClassの方に伝える。
伝えるために DismissDelegate というプロトコルを定義している。
// popoverclass.h
@interface popoverclass:UIViewController <DismissDelegate>
UIPopoverController *popover;
//popoverclass.m
-(IBAction)ClickNext {
ClassPopDismiss *classPopDismiss = [[[ClassPopDismiss alloc]init]autorelease];
classPopDismiss.delegate = self;
popover = [[UIPopoverController alloc]initWithContentViewController:classPopDismiss];
popover.delegate = self;
[popover presentPopoverFromRect:CGRectMake(50, -40, 200, 300) inView:self.view];
}
-(void)didTap {
[popover dismissPopoverAnimated:YES];
}
// ClassPopDismiss.h
@protocol DismissDelegate <NSObject>
-(void)didTab;
@end
@interface ClassPopDismiss
id <DismissDelegate> delegate;
// ClassPopDismiss.m
-(void)tableView:(UITableView*)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[delegate didTap];
}
関連記事
-
-
iPhoneアプリ おんぷちゃん開発日記 iPad版をアップデート
iPhoneアプリサポートページ の方に書きましたが、4月30日にようやくiPad用のアップデート版
-
-
UIScrollView の上で UIView を動かしたい
今作っているiPadアプリで、画面をピンチインアウトで拡大縮小して、さらにその上でドラッグで部品を動
-
-
iPad アプリの iOS Deployment Target に設定するバージョン値を検討する
自作アプリのiPadの対応バージョンを決める際に、一番古くから対応していることにした場合どのバージ
-
-
iPad のマルチタッチジェスチャーによるバグ
iPad/iPad2 はXcodeを利用することでマルチタッチジェスチャーが利用可能になっていました
-
-
iOSアプリの Ad Hoc 配布の悪夢から解放される TestFlight
面倒だった Adhoc 版のやりとりを格段に楽にしてくれる TestFlight | つくる社LL
-
-
iOS14からおんぷ先生と接続できない
下記の問い合わせがあり、調べたところ、iOS14からおんぷちゃんとおんぷ先生がBluetoothで
-
-
iPad Pro 2017 12.9inch購入
新型コロナウィルスの影響でリモートワークの機会が増えているため、リモートワークをサポートす
-
-
[iOS SDK] UIPickerView の文字が表示されない
おんぷちゃん for iPad のiOS7対応をしているときに遭遇した問題。 UIPopove
-
-
[iPhone SDK] アクションメソッドの種類
UIKitのコントローラは、3種類のメソッドで呼び出すことができる。 いつもこれを忘れてしまうので、
-
-
インド式計算マスター
最近朝起きたらやっているアプリ。 これはいい。今まで全く知らなかったインド式計算がいつの日かマスター