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

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

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

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Swift 2

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

UI Design

UI Design(UIデザイン)は、ユーザインターフェースをデザインすることです。ユーザーとシステムがスムーズにコミュニケーションを取るために、OSやアプリ画面などを使いやすくデザインすることを指します。

Q&A

解決済

2回答

5545閲覧

Swift/UIColorを16進数で設定できますか?

chu_xxx_lip

総合スコア124

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Swift 2

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

UI Design

UI Design(UIデザイン)は、ユーザインターフェースをデザインすることです。ユーザーとシステムがスムーズにコミュニケーションを取るために、OSやアプリ画面などを使いやすくデザインすることを指します。

0グッド

0クリップ

投稿2016/02/29 09:12

♡o。.。o♡o。.。o♡o。.。o♡o。.。o♡o。.。o♡o。.。o♡o。.。o♡

#5dbd40を定義したいです。

mySlider02.maximumTrackTintColor = UIColor.greenColor()

だったら、色が表示されるのですが、

16進数でカラー指定できますか?

#5dbd40

現在のコードですが、RGBでも表示できませんでした。

swift

1import UIKit 2 3@IBDesignable class UIView_Slider02: UIViewController { 4 override func viewDidLoad() { 5 6 //スライダ作成 7 let mySlider02 = UISlider(frame: CGRectMake(0, 0, 200, 30)) 8 9 mySlider02.layer.position = CGPointMake(self.view.frame.midX, 100) 10 11 mySlider02.backgroundColor = UIColor.whiteColor() 12 13 mySlider02.minimumValue = 0 14 15 mySlider02.maximumValue = 1 16 17 mySlider02.value = 0.5 18 19 mySlider02.maximumTrackTintColor = UIColor(red: 236, green: 236, blue: 236, alpha: 1.0) 20 //mySlider02.maximumTrackTintColor =UIColor.grayColor() 21 // Sliderの現在位置より右のTintカラーを変える. 22 mySlider02.minimumTrackTintColor = UIColor(red: 93, green: 189, blue: 64, alpha: 1.0) 23 //mySlider02.maximumTrackTintColor = UIColor.greenColor() 24 // Sliderの現在位置より左のTintカラーを変える. 25 mySlider02.addTarget(self, action: "onChangeValueMySlider:", forControlEvents: UIControlEvents.ValueChanged) 26 27 self.view.addSubview(mySlider02) 28 29 30 31 //ここからthumbを画像に 32 mySlider02.setThumbImage(UIImage(named: "Apple_Bite_16px_1177057_easyicon.net")!, 33 forState:UIControlState.Normal) 34 35 } 36 37} 38

よろしくおねがいします٩(๑❛ᴗ❛๑)۶
♡o。.。o♡o。.。o♡o。.。o♡o。.。o♡o。.。o♡o。.。o♡o。.。o♡

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

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

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

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

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

guest

回答2

0

UIColorの拡張メソッドをどこかに作成しておくと、使いやすいです。

以下は"#FFFFFF"のフォーマットの文字列をUIColorに変換してくれます。

swift

1extension UIColor{ 2 static func hexColor(let str: String) -> UIColor 3 { 4 if str.substringToIndex(str.startIndex.advancedBy(1)) == "#" 5 { 6 let colStr = str.substringFromIndex(str.startIndex.advancedBy(1)) 7 if colStr.utf16.count == 6 8 { 9 let rStr = (colStr as NSString).substringWithRange(NSRange(location: 0, length: 2)) 10 let gStr = (colStr as NSString).substringWithRange(NSRange(location: 2, length: 2)) 11 let bStr = (colStr as NSString).substringWithRange(NSRange(location: 4, length: 2)) 12 let rHex = CGFloat(Int(rStr, radix: 16) ?? 0) 13 let gHex = CGFloat(Int(gStr, radix: 16) ?? 0) 14 let bHex = CGFloat(Int(bStr, radix: 16) ?? 0) 15 return UIColor(red: rHex/255.0, green: gHex/255.0, blue: bHex/255.0, alpha: 1.0) 16 } 17 } 18 return UIColor.whiteColor() 19 } 20}

swift

1// 使い方 2mySlider02.maximumTrackTintColor = UIColor.hexColor("#5dbd40")

投稿2016/02/29 12:25

編集2016/02/29 14:54
K_S_

総合スコア419

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

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

Stripe

2016/02/29 14:31

そのコード間違ってますよ。 R, G, Bの値は、0.0〜1.0です。
K_S_

2016/02/29 14:56

コメントありがとうございます。修正しました。
chu_xxx_lip

2016/03/01 06:14

>>KondoSatoru様 NewFile>SwiftFile>Createで作成したファイルに、 ─────────────────────── import UIKit import Foundation extension UIColor{ static func hexColor(let str: String) -> UIColor { if str.substringToIndex(str.startIndex.advancedBy(1)) == "#" { let colStr = str.substringFromIndex(str.startIndex.advancedBy(1)) if colStr.utf16.count == 6 { let rStr = (colStr as NSString).substringWithRange(NSRange(location: 0, length: 2)) let gStr = (colStr as NSString).substringWithRange(NSRange(location: 2, length: 2)) let bStr = (colStr as NSString).substringWithRange(NSRange(location: 4, length: 2)) let rHex = CGFloat(Int(rStr, radix: 16) ?? 0) let gHex = CGFloat(Int(gStr, radix: 16) ?? 0) let bHex = CGFloat(Int(bStr, radix: 16) ?? 0) return UIColor(red: rHex/255.0, green: gHex/255.0, blue: bHex/255.0, alpha: 1.0) } } return UIColor.blackColor() } } ─────────────────────── と記入しました。 NSRangeやradixなど大変勉強になりました。 return UIColor.blackColor()の部分は、何色でもいいんですね。 すべて理解することは時間がかかりますが、今後便利になりそうです!! 知りたかったことでもあるので、本当にありがとうございました????????
chu_xxx_lip

2016/03/01 06:16

Stripe 様もご指摘ありがとうございました!
guest

0

ベストアンサー

16進数指定のRGBは0x000xff(10進数なら0255))、UIColorのRGB指定は0.0~1.0
なので255で割ればいいです。算数の問題。

swift

1UIColor(red: 93/255.0, green: 189/255.0, blue: 64/255.0, alpha: 1.0)

投稿2016/02/29 09:36

fuzzball

総合スコア16731

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

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

chu_xxx_lip

2016/03/01 04:48

ありがとうございます!! 感激です、今後のプログラミングが楽しくなりそうです。 計算式についていけなかったのですが、 割り切れなくて、切り捨てて、UIColor(red: 93, green: 189, blue: 64, alpha: 1.0)とかいても大丈夫でしたし、 UIColor(red: 93/255.0, green: 189/255.0, blue: 64/255.0, alpha: 1.0)をそのままかいても、表示できました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問