私は自分のアプリにLollipopスタイルの切り替えボタンが必要です。
アンドロイドの古いバージョンでもこのように見えるようにこのボタンを実装するにはどうすればよいですか?
最初にAndroid:targetSdkVersion="22"
をマニフェストに追加して、アプリをLollipopと互換性のあるものにします。
注:スイッチの色はこれに依存します
<item name="Android:colorAccent">@color/accent</item>
styles.xml in Folder values-v21でアプリの独自のテーマを作成します
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppTheme" parent="AppTheme.Base">
<item name="Android:colorPrimary">@color/primary</item>
<item name="Android:colorPrimaryDark">@color/primary_dark</item>
<item name="Android:colorAccent">@color/accent</item>
<item name="Android:textColorPrimary">@color/text_primary</item>
<item name="Android:textColor">@color/text_secondary</item>
<item name="Android:navigationBarColor">@color/primary_dark</item>
<item name="toolbarStyle">@style/Widget.AppCompat.Toolbar</item>
</style>
</resources>
styles.xmlデフォルトのフォルダーvaluesまたはvalues-v14
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="AppTheme.Base">
<!-- Customize your theme here. -->
<item name="toolbarStyle">@style/Widget.AppCompat.Toolbar</item>
</style>
<style name="AppTheme.Base" parent="Theme.AppCompat">
<!-- Customize your theme here. -->
<!-- colorPrimary is used for the default action bar background -->
<item name="colorPrimary">@color/primary</item>
<!-- colorPrimaryDark is used for the status bar -->
<item name="colorPrimaryDark">@color/primary_dark</item>
<!-- colorAccent is used as the default value for colorControlActivated
which is used to tint widgets -->
<item name="colorAccent">@color/accent</item>
<!-- You can also set colorControlNormal, colorControlActivated
colorControlHighlight & colorSwitchThumbNormal. -->
</style>
</resources>
古いバージョンのAndroidでLollipopスタイルの切り替えボタンを使用するには、レイアウトXMLファイルでSwitchCompatを使用する必要があります
<Android.support.v7.widget.SwitchCompat
Android:id="@+id/compatSwitch"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"/>
また、Java file
SwitchCompat switchCompat = (SwitchCompat) findViewById(R.id.compatSwitch);
Android Developers Blogには、Lollipop以前のデバイスでマテリアルデザインを使用する方法を説明した素晴らしい記事があります。 http://Android-developers.blogspot.com/2014/ 10/appcompat-v21-material-design-for-pre.html
より具体的に質問に答えるには、SwitchCompat
APIを使用して、古いバージョンのLollipopスタイルスイッチを使用できます。 https://developer.Android.com/reference/Android/support/v7/ widget/SwitchCompat.html
オフスイッチのAPI 24
<Android.support.v7.widget.SwitchCompat
Android:id="@+id/switch1"
Android:layout_alignBottom="@+id/textView3"
Android:layout_alignEnd="@+id/input_layout_password"
Android:layout_alignRight="@+id/input_layout_password"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"/>
私はあなたが必要とするものはその図書館にあると思います
このライブラリは、andorid 5.0のようなマテリアルデザインの切り替えボタンを作成できるようにします
LollipopバージョンでSwitchCompactを使用しているか、更新されたlolliopopバージョンを使用できます
<Android.support.v7.widget.SwitchCompat
Android:id="@+id/compatSwitch"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_below="@+id/switch2"
Android:layout_alignLeft="@+id/switch2"
Android:layout_alignStart="@+id/switch2"
Android:layout_marginTop="39dp" />
古いタイプのスイッチを解決するために
`
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorAccent">@color/colorAccent</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
</style>`
そして、最新の材料設計でスイッチを解決します。