質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.61%

  • Objective-C

    1172questions

    Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

  • iOS 8

    118questions

    iOS 8(アイ・オーエス8)は、アップル社が2014年9月に発表したオペレーティングシステムです。iPhone 4sより対応しています。デザイン性の変更はなく、アプリや各種機能が強化されています。また、サードパーティ開発者のために、多くのAPIが開放されています。

  • Xcode 4

    32questions

    Xcode 4はMac OS Xを使ってMac OSとiOSをターゲットとしたソフトウェアを開発するための主な開発ツールです。

xcodeで、テーブルビューをポップアップのように出す方法

解決済

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 2,715

saikoro

score 15

xcodeで、テーブルビューをポップアップのように出す方法を探しています。
AlertViewを出す方法を使えばいいのでしょうか?
どなたかご教示頂けないでしょうか。
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

+1

お邪魔します。

UIAlertViewで凝ったものを出そうとするとすごく苦労したような気がします。
ベストな方法となるとあまり詳しくないのでわからないのですが。

参考リンクを張っておきます。
私がやるとしたら、多分1つ目のリンクの方法です。

iOS開発におけるウィンドウ「UIWindow」の知られざる活用方法とは? #iOS 
MJPopupViewControllerを使ってポップアップ・ダイアログを簡単に作る



コメントに対する追記です。参考リンクページの記事内にサンプルコードがありますよ。


1    #import <objc/runtime.h>
2    
3    static const char kAssocKey_Window;
4    
5    @implementation CRSRatingViewController
6    
7    +(void)show
8    {
9        UIWindow *window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
10        window.alpha = 0.;
11        window.transform = CGAffineTransformMakeScale(1.1, 1.1);
12        UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Dialog" bundle:nil];
13        window.rootViewController = [storyboard instantiateInitialViewController];
14        window.backgroundColor = [UIColor colorWithWhite:0 alpha:.6];
15        window.windowLevel = UIWindowLevelNormal + 5; // テキトーにちょっと高い
16    
17        [window makeKeyAndVisible];
18    
19        // ウィンドウのオーナーとしてアプリ自身に括りつけとく
20        objc_setAssociatedObject([UIApplication sharedApplication], &kAssocKey_Window, window, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
21    
22        [UIView transitionWithView:window duration:.2 options:UIViewAnimationOptionTransitionCrossDissolve|UIViewAnimationOptionCurveEaseInOut animations:^{
23            window.alpha = 1.;
24            window.transform = CGAffineTransformIdentity;
25        } completion:^(BOOL finished) {
26    
27        }];
28    }
行番号で言うと、
「コードでUIWindowを生成します。」ソース行:9
「ここで、windowLevelとしてメインウィンドウよりも高いウィンドウレベルを設定し、」ソース行:15
「backgroundColorとしてアルファを1未満にした色を設定します。」ソース行:14
「ウィンドウのrootViewControllerとしてstoryboardのinitialViewControllerを差し込んでから」ソース行:13
「makeKeyAndVisibleします。」ソース行:17


投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/01/03 16:31

    ご回答ありがとうございます。
    1つ目のアドレスのページでわからないところがあったのですが、

    「コードでUIWindowを生成します。ここで、windowLevelとしてメインウィンドウよりも高いウィンドウレベルを設定し、backgroundColorとしてアルファを1未満にした色を設定します。」
    「ウィンドウのrootViewControllerとしてstoryboardのinitialViewControllerを差し込んでからmakeKeyAndVisibleします。すると、メインのウィンドウを背後に透かして見せながらオーバーレイする形でカスタムダイアログが表示できます。」

    とはどういう意味なのでしょうか?特に、「高いウインドウレベルを設定する」
    「〜を差し込んでから〜します」というところが分かりませんでした。
    度々お手数ですが、このあたりについてご教示頂けないでしょうか。
    以上、何卒よろしくお願いいたします。

    キャンセル

  • 2015/01/03 17:07

    ご質問の内容に合わせてすこし追記しておきました。わかればよいのですが。

    キャンセル

0

理解できました!ありがとうございました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.61%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 受付中

    Max/MSP Externalオブジェクトでのfftw3の組み込み

    現在Max/MSPのExternalオブジェクトを書いています。 環境は、Mac OS X 10.10.4 , Xcode6.4で開発しています。 そのオブジェクトにfftw3を導

  • 解決済

    AppDelegateに手を加えず通知リクエストを呼び出すためには?

    アプリを立ち上げてすぐ「通知を許可してください」っていうポップアップが出て、「あぁ、またか邪魔だから許可しない!」っていう人は多いかと思います。 アプリ起動直後ではなく、あるVi

  • 解決済

    xcode Organizer にて同じアプリを違うios Appsで出力したい(違うアプリ名で出力...

    いつもお世話になっております 表題の件ですが、違うアプリを開発すると、xcode Organizer内のiOS Appsに違う名前で表示されます。 これを、同じソースコードで違

  • 受付中

    【Swift / barButtonItemについて】

    barButtonItemをstorybordのユーティリティーから設置したんですが、これにコードでアクションつけたい場合ってどうかけばいいですかね?

  • 解決済

    XcodeのAutoLayoutについて

    Stroyboard上でTableViewを左半分に表示したい 今回、画面の左半分にtalbeViewを表示させようと下に載せた写真のように制約を施したのですが、実際にシミュレー

  • 解決済

    Xcodeに出力されるログについて

    iOSアプリ制作をしております。 ある多次元配列をprintメソッドで出力した際に、①ログに出力される配列のプロパティと、②配列の変数にマウスオンした時のプロパティが異なってい

  • 解決済

    XcodeでのiOSアプリ開発で左右に余白を取る方法について

    初めてSwiftとXcodeを使っています。バージョンはSwiftが4.0、Xcodeが9.0です。 Appleの公式チュートリアルの通りに触ってみているのですが、途中でチュートリ

  • 解決済

    Thread 1: signal SIGABRT

    前提・実現したいこと iosアプリ開発初心者です。storyboardのsegueを使って画面遷移を行いたいのですが、下記のエラーメッセージが出て画面遷移が行われません。story

同じタグがついた質問を見る

  • Objective-C

    1172questions

    Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

  • iOS 8

    118questions

    iOS 8(アイ・オーエス8)は、アップル社が2014年9月に発表したオペレーティングシステムです。iPhone 4sより対応しています。デザイン性の変更はなく、アプリや各種機能が強化されています。また、サードパーティ開発者のために、多くのAPIが開放されています。

  • Xcode 4

    32questions

    Xcode 4はMac OS Xを使ってMac OSとiOSをターゲットとしたソフトウェアを開発するための主な開発ツールです。