回覆列表
  • 1 # 使用者7920461864026

      全域性修改控制元件的顏色  UIView 中有一個 tintColor 屬性,該屬性會在 view hierarchy 中傳遞下去。比如 window 的 tintColor 為紅色,那麼其 subviews 的 tintColor 都會是紅色的。並且還可以透過 UIAppearance 中的來對控制元件進行全域性外觀設定:  UIButton.appearance().tintColor = UIColor.magentaColor()  在 iOS 9 中還新增了一個修改「區域性外觀」的 API~  UIButton.appearanceWhenContainedInInstancesOfClasses([MyView.self]).tintColor = UIColor.cyanColor()  修改圖片的顏色  當然 app 中除了純色的控制元件之外還有各種圖片。 UIImage 有一項屬性叫做 renderingMode ,可以設定為:  

    1)AlwaysOriginal讓圖片顯示為應有的顏色。  

    2)AlwaysTemplate使圖片顯示為模版模式,無視其顏色。  

    3)Automatic  這項是預設的。大多數情況下一張圖片放在系統控制元件中會顯示其應有的顏色,但有的情況下其顏色會被無視,比如在 UITabBarItem 中的圖片。  利用這個屬性我們就可以將 app 中的圖片也修改為配合主題的顏色:let templateImage = image?.imageWithRenderingMode(.AlwaysTemplate)  templateImage.tintColor = myColor()  但每次使用圖片都這樣程式碼設定一次又很麻煩,不過幸運的是我們可以直接在 Assets.xcassets 中設定圖片的屬性:

  • 中秋節和大豐收的關聯?
  • “商業模式”究竟為何物?