[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];
}

関連記事

no image

Core Graphics と Quartz

Core Graphics と Quartz の関係がよく分からなかったので調べていたところ、ほぼ同

記事を読む

no image

Pebble E-Paper Watch 届いた! 感想。

追記: Pebble 向けにアプリを作りました。 Kickstarter で iPhone/A

記事を読む

深見先生のICT Music Session vol.2に参加してきた

2016年1月24日(日)14:00 - 16:30に行われた ICT Music Session

記事を読む

no image

[iOS開発本] 詳解 iOS5 プログラミング の感想

書店で見かけて久しぶりに即買いしたiOS開発本。 今日ようやくざっと読めて、予想以上におもしろかった

記事を読む

no image

Amazon Web ServicesあらためAmazon Product Advertising APIのObjective-Cでの利用

去年はC#でAmazon Web Serviceを使ったデモアプリを作成していたのだが、今年はiPh

記事を読む

PebbleアプリのPebble Time Round対応

BeforeAfter 丸くなったPebbleを初レビュー。ギークじゃなくても使えるスマートウォッチ

記事を読む

Apple Event Apple Watch 3/10 2AM JST

Apple Watch に関するイベントが3/10(火)2:00AM JSTに行われるら

記事を読む

Miselu C.24 届いた

Bluetooth 鍵盤 Miselu C.24 が2015年3月にようやく届い

記事を読む

no image

[iPhone SDK] ネットワーク接続中を示すぐるぐるの表示

いつも忘れて検索してしまうので自分のブログにメモ。 iPhoneのインジケーターバー(?)にぐるぐ

記事を読む

おんぷちゃん for iPad 1.9.0が異常終了する

ユーザの方から下記の連絡がありました。 おんぷちゃんfor iPadを使用させて頂いておりま

記事を読む

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

ポモドーロテクニック用物理タイマーならTime Timer

会社ではなかなか自由に時間を使えないが、家で読書や作業をする

DELL 32インチディスプレイ U3223QE 購入

Dell U3223QE は解像度 3840x216

WWDC 2023 Vision Pro発表

2023/6/5 (日本時間 2023/06/06 2AM)のWWD

M1 MacBook Air を Venturaにアップデートする

M1 MacBook Air を macOS Montere

iOS16でaurioTouch の inBufferFramesが1になる

https://developer.apple.com/librar

→もっと見る

  • 2012年6月
     123
    45678910
    11121314151617
    18192021222324
    252627282930  
PAGE TOP ↑