2017-06-23 45 views
0

資産フォルダに画像があり、タブバーに画像が表示されません。私は他の答えが言ったように "オリジナル画像"に "レンダリング"を設定しましたが、それは問題を解決しません。タブバーアイテム画像が表示されない

class CustomTabBarController: UITabBarController { 
override func viewDidLoad() { 
    super.viewDidLoad() 


    let homeController = HomeController(collectionViewLayout: UICollectionViewFlowLayout()) 
    let navigationController = UINavigationController(rootViewController: homeController) 
    navigationController.tabBarItem.image = UIImage(named:"news_feed_icon") 

    viewControllers = [homeController] 

    } 
} 
+0

72X72イメージを保持します。 – Hasya

答えて

0

これが起こっている理由のカップルがあるかもしれません:

1)あなたは、画像

2)のために間違った名前を入力した可能性があり画像がであってもよいです表示するには大きすぎるサイズ。タブバーのアイテム画像は約28pt〜32pt(ピクセル)のサイズでなければなりません。

3)また、正しい形式でない可能性があります。タブバーのイメージは、単色でレンダリングされるPNGである必要があります。公園などでツリーのJPEGを読み込もうとしている場合、うまくいかないかもしれません。また

私が見つけたあなたは変更UITabBarItemの画像をご希望の場合、明示的に新しいタブバーのアイテムを作成する必要があります。 UITabBarItemに「更新」して画像を追加する必要がある場合は、通常、タブバーからすべてのアイテムを削除し、新しいアイテムをすべて新しい画像で作成します。

それがあなたの問題であるならば、私は上記のviewDidLoadでそれを行うView Controllerに関数を書くことをお勧めします。コントローラ上でその関数を呼び出すだけです。

0

これを試してください。

は私がなぜわからないんだけど、あなたは同じコードの異なる順序に従う必要のviewDidLoad

let customTabBarItem:UITabBarItem = UITabBarItem(title: nil, image: UIImage(named: "news_feed_icon")?.withRenderingMode(UIImageRenderingMode.alwaysOriginal), selectedImage: UIImage(named: "news_feed_icon")) 
    self.tabBarItem = customTabBarItem 
+0

これは機能しません。私もクラスの名前に自分自身を変更しようとしました。 – jhaywoo8

+0

あなたはhomeViewControllerに追加しましたか? – KKRocks

0

を追加します。まず、viewControllerをtabBarに追加し、その画像を追加します。

class CustomTabBarController: UITabBarController { 
override func viewDidLoad() { 
    super.viewDidLoad() 


    let homeController = HomeController(collectionViewLayout: UICollectionViewFlowLayout()) 
    let navigationController = UINavigationController(rootViewController: homeController) 

    //First do this 
    viewControllers = [homeController] 

    //Then add image 
    navigationController.tabBarItem.image = UIImage(named:"news_feed_icon") 
    } 
} 
関連する問題