2017-03-15 8 views
-1

こんにちは私は、以下のような選択可能なセルと同様のポップアウトテーブルビューを作成するために探しています。どんな助けでも大変ありがとう! Here is what I would like to style it afterポップアウトテーブルビューでテキストフィールドを作成する方法

+1

ことから、項目の選択を処理するために必要な、私はSOこれは素晴らしいではないと思います。タップされたボタンからそのポップオーバーを紹介します質問becauそれは特定のプログラミングの質問ではない...私は、テキストフィールドのフレームを取得し、テーブルのオフセットフレームを計算し、ビューに追加することをお勧めします。 –

+0

どのように?私はそれをするより簡単な方法があるように感じる私はちょうどアイデアを取得しようとしている –

答えて

0

あなたはUIPopoverPresentationControllerを使いたいと思うでしょう。

  1. あなたはポップオーバーから選択した項目で何かするポップオーバー
  2. を提示することができるようにアクションを送信するボタンを作る
  3. を選択できるようにしたいデータをtableviewControllerしてください。

上記の2番目の項目は、このような何か(私自身のコード例を)になります。

@IBAction func shareAction(_ sender: UIButton) { 
     let controller = ShareVC() 
     controller.socialPost = self.item 
     controller.modalPresentationStyle = .popover 
     // configure the Popover presentation controller 
     let popController: UIPopoverPresentationController? = controller.popoverPresentationController 
     popController?.permittedArrowDirections = [.up, .down] 
     popController?.delegate = self 
     // in case we don't have a bar button as reference 
     popController?.sourceView = sender 
     popController?.sourceRect = sender.frame 
     popController?.backgroundColor = .white 

     self.parentViewController?.present(controller, animated: true, completion: { }) 
} 

私の場合は「ShareVCは、」アイテムの共有オプションでのUITableViewControllerであるあなたのスクリーンショットのようにかなり類似した限り。レイアウトが行くように。

をこれはその後、再び、あなただけのViewController。

+0

これは私のボタンにアンカーしないpopControllerを提示する何かを除いて、これは非常に有用でした。私はsender.frameとsourceView = senderとしてsourcerectを持っています。これは制約と関係がありますか?またはスクロールビューにボタンがあることを確認しますか?また、私はあなたの答えにあなたがUIPopoverPresentationDelegateをインポートする必要があることを追加したいと思います。 –

+0

うーん、それは面白いです。ソース*項目を設定している場合、なぜそれが正しくアンカーされないのかが完全にはわかりません。矢印が適切にレイアウトできない場合、画面上のコンパクトな場所に表示されているかのように、許可された矢印の方向を試してみてください。 –

+0

私はあなたがpopController.sourceRect = sender.boundを持っている必要があると考えました。 –

関連する問題