Xcodeのエラーメッセージいついて
- 評価
- クリップ 0
- VIEW 2,207
iOSシミュレーターでアプリを動かしている最中に,
Xcodeのデバッグエリアに下記のようなメッセージが表示されます.
[Graphics] UIColor created with component values far outside the expected range. Set a breakpoint on UIColorBreakForOutOfRangeColorComponents to debug. This message will only be logged once.
どこをどのようにデバッグすべきかヒントをいただけないでしょうか.
追記
fuzzball様
ご対応ありがとうございます.
btを打ち込んで出力されたのは下記のようなものでした.
よろしくお願いいたします.
- thread #1: tid = 0x3eadf, 0x00000001080030ec UIKit
UIColorBreakForOutOfRangeColorComponents, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1 * frame #0: 0x00000001080030ec UIKit
UIColorBreakForOutOfRangeColorComponents
frame #1: 0x0000000108003ea6 UIKit-[UIDeviceWhiteColor initWithWhite:alpha:] + 421 frame #2: 0x00000001061d0590 FolioReaderKit
@nonobjc UIColor.init(white : CGFloat, alpha : CGFloat) -> UIColor + 16 at FolioReaderChapterList.swift:0
frame #3: 0x00000001061cf5e8 FolioReaderKitUIColor.__allocating_init(white : CGFloat, alpha : CGFloat) -> UIColor + 88 at FolioReaderChapterList.swift:0 frame #4: 0x0000000106219d50 FolioReaderKit
FolioReaderPageIndicator.reloadColors(self=0x00007f8b0150e510) -> () + 2992 at FolioReaderPageIndicator.swift:80
frame #5: 0x0000000106219133 FolioReaderKitFolioReaderPageIndicator.reloadView(updateShadow=true, self=0x00007f8b0150e510) -> () + 3027 at FolioReaderPageIndicator.swift:59 frame #6: 0x00000001061a71b8 FolioReaderKit
FolioReaderCenter.viewWillAppear(animated=true, self=0x00007f8b02015000) -> () + 296 at FolioReaderCenter.swift:166
frame #7: 0x00000001061a7211 FolioReaderKit@objc FolioReaderCenter.viewWillAppear(Bool) -> () + 49 at FolioReaderCenter.swift:0 frame #8: 0x0000000107e93de3 UIKit
-[UIViewController _setViewAppearState:isAnimating:] + 692
frame #9: 0x0000000107e944f3 UIKit-[UIViewController __viewWillAppear:] + 147 frame #10: 0x0000000107ecf178 UIKit
-[UINavigationController _startTransition:fromViewController:toViewController:] + 847
frame #11: 0x0000000107ed00b9 UIKit-[UINavigationController _startDeferredTransitionIfNeeded:] + 874 frame #12: 0x0000000107ed119b UIKit
-[UINavigationController viewWillLayoutSubviews] + 58
frame #13: 0x00000001080c81b7 UIKit-[UILayoutContainerView layoutSubviews] + 223 frame #14: 0x0000000107db1344 UIKit
-[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 1237
frame #15: 0x000000010f5bbcdc QuartzCore-[CALayer layoutSublayers] + 146 frame #16: 0x000000010f5af7a0 QuartzCore
CA::Layer::layout_if_needed(CA::Transaction*) + 366
frame #17: 0x000000010f5af61e QuartzCoreCA::Layer::layout_and_display_if_needed(CA::Transaction*) + 24 frame #18: 0x000000010f53d62c QuartzCore
CA::Context::commit_transaction(CA::Transaction*) + 280
frame #19: 0x000000010f56a713 QuartzCoreCA::Transaction::commit() + 475 frame #20: 0x0000000107d17878 UIKit
_afterCACommitHandler + 346
frame #21: 0x000000010786de17 CoreFoundation__CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23 frame #22: 0x000000010786dd87 CoreFoundation
CFRunLoopDoObservers + 391
frame #23: 0x0000000107852b9e CoreFoundation__CFRunLoopRun + 1198 frame #24: 0x0000000107852494 CoreFoundation
CFRunLoopRunSpecific + 420
frame #25: 0x000000010f49ea6f GraphicsServicesGSEventRunModal + 161 frame #26: 0x0000000107cecf34 UIKit
UIApplicationMain + 159
frame #27: 0x00000001060b5bbf PintReadermain + 111 at AppDelegate.swift:13 frame #28: 0x000000010aef368d libdyld.dylib
start + 1
frame #29: 0x000000010aef368d libdyld.dylib`start + 1
-
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
クリップを取り消します
-
良い質問の評価を上げる
以下のような質問は評価を上げましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
質問の評価を上げたことを取り消します
-
評価を下げられる数の上限に達しました
評価を下げることができません
- 1日5回まで評価を下げられます
- 1日に1ユーザに対して2回まで評価を下げられます
質問の評価を下げる
teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。
- プログラミングに関係のない質問
- やってほしいことだけを記載した丸投げの質問
- 問題・課題が含まれていない質問
- 意図的に内容が抹消された質問
- 過去に投稿した質問と同じ内容の質問
- 広告と受け取られるような投稿
評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
check解決した方法
0
結局使用していたライブラリをアップデートしたところ,メッセージは出なくなりました.
しかし,前のバージョンにおいても当初は問題ありませんでしたので,
必ずしもアップデートそのものが解決策であったとも言い難いです.
ともかく現在のところ,質問させていただいた現象は無くなっています.
お答えいただいたお二方には心から感謝いたします.
教えていただいたデバッグの仕方は今後に生かしたいと思います.
ありがとうございました.
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
0
書いてある通りじゃ・・・色指定で大きすぎる数字がセットされているのでは?
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
0
btのログ見ました。
:
frame #2: 0x00000001061d0590 FolioReaderKit@nonobjc UIColor.init(white : CGFloat, alpha : CGFloat) -> UIColor + 16 at FolioReaderChapterList.swift:0
frame #3: 0x00000001061cf5e8 FolioReaderKitUIColor.__allocating_init(white : CGFloat, alpha : CGFloat) -> UIColor + 88 at FolioReaderChapterList.swift:0
frame #4: 0x0000000106219d50 FolioReaderKitFolioReaderPageIndicator.reloadColors(self=0x00007f8b0150e510) -> () + 2992 at FolioReaderPageIndicator.swift:80
:
これの一番上(frame #2)でしょうか。
//FolioReaderChapterList.swift
override func viewDidLoad() {
super.viewDidLoad()
:
tableView.backgroundColor = isNight(readerConfig.nightModeMenuBackground, readerConfig.menuBackgroundColor)
tableView.separatorColor = isNight(readerConfig.nightModeSeparatorColor, readerConfig.menuSeparatorColor)
:
ここが怪しいです。
デバッガで止めるなり、print()で出力するなりして、ここで設定しているUIColorを調べてみて下さい。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 88.09%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる
質問への追記・修正、ベストアンサー選択の依頼
fuzzball
2017/01/10 10:38
fromageblancさんの回答にあるブレークポイントで止まった後、Step outするとどこに戻るでしょうか?(そこでエラーが発生していると思われます) よく分からなければ、ブレークポイントで止まった後、Consoleに bt [Enter] と打ち込んで出力されるログを教えて下さい。