react native の switch に ios, android それぞれにそれらしくスタイルを当てる

facebook.github.io

他の component は tintcolor を設定すると ios, android 合わせて大体良い感じになるけどこれはならない。 ドキュメント通りではあるけれど名前が紛らわしい感がある。

まぁ、native の方でも tint color として多分当てられると思うけど(試してはいない)

ios

f:id:soh335:20180815093607p:plain

f:id:soh335:20180815093614p:plain

白系のデザインだったら on 状態の背景色だけ変えれば良いので onTintColor だけ指定する

android

f:id:soh335:20180815094208p:plain

f:id:soh335:20180815094156p:plain

グリップの色は on, off で変えたいので props.value を見て変える。

rn

なので上の例だと、 components/Switch.tsx とかに下のようなラッパーを書くと良い

import { Switch as RNSwitch, SwitchProps as RNSwitchProps, Platform } from 'react-native'

const SwitchIOS = (props: RNSwitchProps) =>
    <RNSwitch onTintColor="青" {...props} />

const SwitchAndroid = (props: RNSwitchProps) =>
    <RNSwitch onTintColor="薄い青" thumbTintColor={props.value ? "青" : "グレー" } tintColor="薄いグレー" {...props} />

export const Switch = Platform.select({ "ios": SwitchIOS, "android": SwitchAndroid })

8月に見る予定の映画

趣旨 soh335.hatenablog.com

8/1, 8/3

www.disney.co.jp

楽しみ

missionimpossible.jp

絶対見る

gaga.ne.jp

予告で面白そうなので

8/10, 8/11

wwws.warnerbros.co.jp

予告出てから長かった...

8/17

wwws.warnerbros.co.jp

1 見てないけど...

penguin-highway.com

本よんだのだいぶまえで覚えてないけど

8/24

www.mammamiamovie.jp

踊りたい...

8/31

marvel.disney.co.jp

いつも見てるので

sunny-movie.jp

一応見ようかなぐらい

羊と鋼の森

羊と鋼の森 (文春文庫)

羊と鋼の森 (文春文庫)

「才能っていうのはさ、ものすごく好きだっていう気持ちなんじゃないか。どんなことがあっても、そこから離れられない執念とか、闘志とか、そういうものと似てる何か。俺はそう思うことにしてるよ」

映画はちょっと変えてるんだなぁという発見もあった。どっちも面白いですね。