2017-03-17 7 views
0

私はカスタムキーボードを作っていますが、高さは何らかの理由で強制されます。私は、ビューの属性とサイズインスペクタでいくつかのオプションを変更しようとしましたが、決して助けになりませんでした。ストーリーボードによるカスタムキーボードの高さ

これまでの私の試みです。
Attempt 1 small
Attempt 1 temporary

私は私のプロジェクトを実行するときに、見ることができるように、キーボードの高さは、AppleのiOSのキーボードに比べて小さくなりすぎます。私は、ちょっと待ってみると、キーボードの高さが普通になっていることに気づいた(AppleのiOSキーボードと同じサイズ)。

次に、キーボードのビューに固定された高さを指定して、コンテナの上端に固定するのではなく、高さを強制的に変更しようとしました。それは働いたが、それはすべての粗い画面をカバーしたので、全く実用的ではありません。

私は、容器の高さに対して比例した高さを与えようとしましたが、異なる乗数の値は0.3ですが、元の振る舞いに戻りました。また、AppleのiOSキーボードの正しいサイズが白い背景色で占められていた残りのスペースも埋まっていました。

私は3つの水平スタックビューとすべてのボタンを含むVertical StackViewを使用しています。私はStackViewsを削除しようとしただけのプレーンビューでテストしたが、それは同じ方法で縮小しているので、これはカスタムキーボード拡張であるという事実と関係があると思う。 コードに関しては、キーボードのViewControllerのテンプレートで何も編集していませんが、ボタンのタイトルを読み込んでテキストを挿入するアクションは異なります。

明らかでない場合は、シングルビューアプリケーションプロジェクトを作成してこの段階に入り、新しいターゲットとしてカスタムキーボード拡張を追加しました。私はストーリーボードを追加し、私はそれにメインインターフェースを指摘しました。

コンテナの高さの関数であるカスタム高さをどのように達成できるかについてのアイデアはありますか?たくさん

+0

を追加しようとしています。 – Tarek

答えて

1

おかげで私はRedditの上であなたに答え、それは間違っていました。私のキーボードはあなたとは違ってセットアップされていました。あなたは私の質問がダウンこの質問はスタックオーバーフローの上に適切に答えていませんでしたでもカントー投票してしまった私はなぜ表示されないのviewDidLoadで制約()

let constraint = NSLayoutConstraint(item: self.view, 
              attribute: .height, 
              relatedBy: .equal, 
              toItem: nil, 
              attribute: .notAnAttribute, 
              multiplier: 0.0, 
              constant: 500) // Set custom height here 
self.view.addConstraint(constraint) 
+0

私はまだ私の研究のために何か提案を試みる機会はありませんでしたが、私が試みたのはXIBファイルでキーボードを設計することでした。驚いたことに、それは魅力的なように機能し、アップルのiOSのデフォルトのキーボードの高さをデバイスのサイズや向きに関係なく継承しました。デフォルトのキーボードの高さは(少なくとも私のプロジェクトのこの段階では)良いので、高さを変更する必要はないかもしれませんが、少なくともストーリーボードではそれが独力で縮小する問題とは異なります。 – Tarek

+0

これは実際にキーボードのNIBファイルと一緒にうまくいきました。したがって、制約を設定しないと、キーボードはデフォルトのiOSキーボードの高さを継承します。これは完全に機能します。 私はupdateViewConstraints()メソッドでコードを追加し、viewDidLoad()でNIBのコードを追加しました。うまく機能し、異なる方向に自動的に適応します。 ストーリーボードで何が間違っているのでしょうか?再度、感謝します :) – Tarek

関連する問題