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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Xcode 7

Xcode 7は、ソフトウェア開発のためのアップルの統合開発環境であるXcodeのバージョン。UIを作成するために用いるグラフィカルツールです。iOS9/OS X El Capitan/watchOS2に対応。Swift 2コンパイラーが搭載されています。

UI

UIはUser Interfaceの略であり、人間がコンピュータとやりとりをするためのシステムです。

Swift 2

Swift 2は、Apple社が独自に開発を行っている言語「Swift」のアップグレード版です。iOSやOS X、さらにLinuxにも対応可能です。また、throws-catchベースのエラーハンドリングが追加されています。

Q&A

解決済

1回答

6653閲覧

UITabBarを画面上部に表示させる方法 [タブバー]

tgmdik

総合スコア12

Xcode 7

Xcode 7は、ソフトウェア開発のためのアップルの統合開発環境であるXcodeのバージョン。UIを作成するために用いるグラフィカルツールです。iOS9/OS X El Capitan/watchOS2に対応。Swift 2コンパイラーが搭載されています。

UI

UIはUser Interfaceの略であり、人間がコンピュータとやりとりをするためのシステムです。

Swift 2

Swift 2は、Apple社が独自に開発を行っている言語「Swift」のアップグレード版です。iOSやOS X、さらにLinuxにも対応可能です。また、throws-catchベースのエラーハンドリングが追加されています。

0グッド

0クリップ

投稿2016/08/30 03:46

###前提・実現したいこと
Xcode7 Swift2にて横スワイプ型のアプリを作りはじめて1週間の者です。
デザインの都合上、UITabBarを画面の上部に表示させたく思っております。

【試行の枠組み】
TabBarのサイズと画面全体のサイズを取得後、CGRectMakeにてTabBarを移動させ、
その後コンテンツ表示部もCGRectMakeにて移動させるという枠組みで実装を考えています。

###発生している問題・エラーメッセージ

Use of unresolved identifier 'tabBarHeight' Use of unresolved identifier 'screenWidth'

###該当のソースコード

import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? struct DeviseSize { //CGRectを取得 static func bounds() ->CGRect { return UIScreen.mainScreen().bounds } //画面の横サイズを取得 static func screenWidth() ->Int { return Int(UIScreen.mainScreen().bounds.size.width) } //画面の縦サイズを取得 static func screenHeight() ->Int { return Int(UIScreen.mainScreen().bounds.size.height) } static func tabBarHeight(tabBarController: UITabBarController) -> CGFloat { return tabBarController.tabBar.frame.size.height } } func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { self.tabBarController!.tabBar.frame = CGRectMake(0.0, 20.0, screenWidth, tabBarHeight) // Override point for customization after application launch. return true }

気になる質問をクリップする

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

AppleのUI部品の使い方として正しいとは言えないのでお勧めはしません、、、でもできないことはないので一応やり方は載せておきます。

UITabBarControllerのサブクラスを作ってその内で以下のようにすることでTabBarの位置を変更できます。

swift

1import UIKit 2 3class TabBarController: UITabBarController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 8 } 9 10 override func viewDidLayoutSubviews() { 11 super.viewDidLayoutSubviews() 12 13 let screenWidth = UIScreen.mainScreen().bounds.width 14 self.tabBar.frame = CGRectMake(0.0, 20.0, screenWidth, tabBar.frame.size.height) 15 } 16}

投稿2016/08/30 12:41

_Kentarou

総合スコア8490

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問