2017-02-27 6 views
2

私はSwift 3、Xcode 8.2を使用しています。Swift 3 - タブバー(カメラボタンなど)に目立つボタンを作成するには

私はカメラボタンが少し目立つ/タブバーに囲まれて、このような何か(オスカーをテーマにした塗りつぶしを無視する)にしたい:私は、全体のことがあると仮定し

enter image description here

画像はタブバーから何らかの形で自然に浮かび上がった画像ですか?

すべてのリソースや正しい方向に私を指すことができる場合は素晴らしいだろう。ありがとうございました!

EDIT

私は私が何をしたいのかを説明し、他の記事を発見したことがあります。How do we create a bigger center UITabBar Item

答えて

9

1つの方法は、ダミーセンタービューコントローラーを使用してUITabBarControllerの上にUIButtonを追加することです。

ここで私はそのボタンを追加するにはストーリーボードとサブクラスUITabBarControllerを使用します。

enter image description here

これが私のストーリーボードで、中心ビューコントローラは、スペースのためだけに存在しているか注意してください。

enter image description here

これらのコードとストーリーボードのみを使用すると、結果は次のようになります。

ここenter image description here

プロジェクト:https://github.com/aunnnn/TestButtonOnTabBar/

+0

これは私のために最適です。ありがとうございました! – noblerare

+0

コードの数字を理解するのを助けてくれますか?具体的には、 'viewDidLoad'と' viewDidLayoutSubViews'の 'button.frame'はどうなり、どのように違うのですか? – noblerare

+0

@noblerare実際にはviewDidLoad()の.frameを設定しても効果はありませんが、削除するのを忘れてしまいました。一番下の中央にボタンを置くには2つの方法があります:1)Autolayoutまたは2)手動でフレームを設定する。ここで私は2)に行き、viewDidLayoutSubViews()はすべてのビューが既にレイアウトされている場所です。これは私がself.viewの正しいフレームを知っている場所でもあるので、ボタンフレームで設定します。 – aunnnn

0

一つの解決策は、TabBarの独自のサブクラスを作成したり、ただ持っているジェネリックのUIViewを作成することですTabBarと同じプロパティ(例えば、ある高さでビューの内側に表示されるボタンの配列、異なる高さやオフセット値を持つ中央のものなど)。

あなたが取ることができるもう1つのルートは、同じ種類の機能を使用する他のフレームワークを検索して見つけることです。 cocoacontrolsのクイック検索には、あなたが探しているものに最も近いと思われるものがいくつかありました。RaisedCenterTabBarです。

関連する問題