iPhone開発のネタ帳: コールアウト代用部品を作る
Map Kit を使うと、地図上に吹き出しのようなものを表示できる。この吹き出しのようなものをコールアウト Callout と呼ぶらしい。
このコールアウトは MKMapView でしか使用できないと思うが、地図アプリ以外でも使えたら便利だ。
しかし今はMKMapViewでしか使用できないコントロールとなっている。

ということで、自作アプリではsonsongithub の PopupView を使ってみたのだが、使っているうちに、コールアウトのようにUITableViewCellAccessoryDetailDisclosureButton (青丸に白で>と書かれているボタン)を表示したりしたくなってきた。
PopupView を改造することを考えたが、実際やってみると簡単にはできなそう。
しかしよく考えると自分のアプリは今のところiPad専用なので、UIPopoverController を使う手もありそう。
UIPopoverController はUIViewをPopover内に何でも表示することができるので、この中にUITableViewを表示すれば、UITableViewCellAccessoryDetailDisclosureButton を表示することができそう。

ということで、作ってみたら見た目は違うけれども一応使えるものができた。
… と思ったのだが、実際に使ってみるとUIPopoverControllerはコールアウトとはかなり挙動が異なる。ある程度 passthroughtViews とかで挙動を変えられるが、それでもちょっと使いづらいのでコールアウトの代わりに使うのは見送りとした。
もう一度 PopupView の改造にトライしようと新規にダウンロードしたところ、UIView が組み込めるように更新されていて驚いた。1日前に更新されたようだった。
このため、UIView を自分で作ることでコールアウトに近いものを作ることができた。
ただ、コールアウト中の UITableViewCellAccessoryDetailDisclosureButton (青丸に白で>と書かれているボタン) は単なるUIView派生クラスを組み込んでしかもそのボタンを押したときに特別な処理を呼ぶことはできなかったので、少しだけSNPopupView本体に手を入れさせてもらった。
手を入れないで対応できる方法が思いつけば良かったけれども。

関連記事
-
-
おんぷちゃん for iPad にオンライン授業サポート機能を追加
コロナウィルスの影響で、うちの子どもたちのピアノレッスンもオンライン授業になりまし
-
-
iPhoneアプリ おんぷちゃん開発日記 和音表示
自分の娘のために作った五線譜学習アプリ「おんぷちゃん」の開発を細々と続けている。 iPadのグランド
-
-
simplism 0.7mm Ultra Thin Case for iPhone 6 Plus(5.5inch)購入
Amazonを見ているとiPhone 6 Plus の筐体はそれなりに傷が付きや
-
-
2009年9月発売のiPhone SDK関連書籍
9月は書店に行くたびにiPhone SDK関連本が増えていて驚いた。 調べてみたところ、少なくとも下
-
-
Reject履歴 EverLearn 1.7.0
どうやら Apple Watch対応アプリの審査は厳しいらしいので、Rejectされた履歴を書いてみ
-
-
大量のスクリーンショット取得作業を省力化する Sketch to AppStore vs LaunchKit
段々対応が必要な解像度が増えて、今は App Store にアプリSubmit時に4種類もスクリーン
-
-
確かにきれいに貼れる パワーサポート アンチグレアフィルムセット for iPhone 4 PHK-02
会社の知り合いがiPhone 3GSに貼っていた保護シートがえらくきれいに貼れているのでメーカーを確
-
-
最近読んだ本: これでiPhoneアプリが1000万本売れた 南雲 玲生著
周りでおもしろいと言っている人がいたので買ってみた。2011/05/21発売。 株式会社ユードーの南
-
-
リズムくんHD 1.0.1 をリリースしました (2012/09/01)
iPhone/iPad はサイレントモードにしても音が鳴る | DevCafeJp iOSの消音
-
-
おすすめ iPhone5用ケース iJacket
iPhone5購入時に同時に購入したケース(写真上)が1ヶ月程度でかなりみすぼらしい状態