超お父さんの日記

日記とか雑談とか、スノーボードとか、サーフィンとか、たまに技術系とか。

iOS13 だとUISliderのTrackImageにセットした画像がバックグラウンド復帰時になくなってしまう?

UISliderの

setMinimumTrackImage(image, for: .normal)
setMaximumTrackImage(image, for: .normal)

で画像を設定し、こんな感じの表示にしてました。

f:id:hirokim412:20200213123816p:plain

これが表示される画面で、ホームボタンを押して一旦バックグラウンドにし、 アプリアイコンタップ等でフォアグラウンドに戻ってくると、、、

f:id:hirokim412:20200213124103p:plain

設定した画像がなくなってる・・・謎っ!!

iOS12のシュミレータだと発生せず、iOS13のシュミレータだと発生しました。

こういうの嫌だな〜と思っていたところ、 ちょうど他の画面でもUISlider使ってて、そちらでは発生せず。

これは、、と思ってコードやらインスペクタやら見比べてまくったところ、 発生する方のUISliderのインスペクタには 'Min Track' と 'Max Track' のカラーがデフォルトじゃないという違いを発見。

f:id:hirokim412:20200213124535p:plain

ここのカラーをデフォルトに戻したら直りましたとさ。

しかしiOS13からこの挙動って、、、バグなの?正しい挙動なの?