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

関連記事

Anker の高耐久ライトニングケーブルを買ってみた

立て続けに2本ライトニングケーブルが壊れたので、ふんぱつして高級ケーブルを買ってみた。 たしかに

記事を読む

[iOS開発本] よくわかる Auto Layout

あまりにも Auto Layout がわかりにくいので、業を煮やして開発本を買ってしまった。「よくわ

記事を読む

Apple Special Event 2015

https://www.gizmodo.jp/2015/09/applelive_event_ip

記事を読む

[WatchKit] Apple WatchアプリをRejectされた話

Apple Watch はいつの間にか電池がかなり減っていることが多く、いつどのように減っているか知

記事を読む

WatchKitのAVSpeechSynthesizerで音が鳴らない

自作英単語学習アプリ EverLearn には watchOS用アプリがあり、iOS側でまちがった

記事を読む

ITMS-90175 Legacy Language Designator

自分は自作アプリの非常に古いプロジェクトをいまだにメンテすることがあるので、ITMS-90

記事を読む

no image

タッチ! アメリカ地図 1.0.1 アップデート

タッチ! アメリカ地図 のアップデート(バージョン 1.0.1)を8月から5ヶ月ぶりにApp Sto

記事を読む

iOS9から[NSLocale preferredLanguages] の出力が変更された

以前ツイートした内容を自分で忘れていて検索する羽目になったのでブログにも書いておく。iOS9から、

記事を読む

[iOS本] Objective-CによるAutoLayout 解説本 (iOS7/iOS8)

UIKit徹底解説 iOSユーザーインターフェイスの開発 posted with カエ

記事を読む

Roland 電子ドラム TD-4KP 落札

(2016年2月の記事)ドラム譜学習アプリを作るためには自分も叩けないと困るだろう、ということでMI

記事を読む

Message

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Ember Mug 2のACアダプタをUSB Type-Cに変えてみた

冬になると活躍する Ember Mug 2 の充電器は付属のACアダ

Wi-Fi6Eルータ TP-Link AXE5400購入

Wi-Fi6E を試してみたくなり、TP-Link AXE5

児童手当 認定請求書申請 2024 「請求者が養育をする18歳に達する日以降の最初の3月31日までの子の数」とは?

2024年に受給していない人には手紙が届くらしい。 電子申請も

Vision Proアプリ開発本 8/24、8/26に発売

Vision Proアプリ開発入門 P400が 8/24 に発売、V

Developer Strap が日本でも購入可能に

USアカウントでしか購入できなかった Vision Pro 用 De

→もっと見る

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