如何在我的应用程序中添加一个SwitchBar?

如何在我的应用程序中添加一个SwitchBar?

问题描述:

我试图从我的应用程序中的Android设置应用程序使用SwitchBar,但将它添加到我的活动并添加所需的所有部分以使其编译后,我得到此编译错误:Error inflating class com.android.settings.widget.SwitchBar如何在我的应用程序中添加一个SwitchBar?

这里是我做出什么变化它来编译:

将此添加到我的attrs.xml

<attr name="switchBarTheme" format="reference" /> 
<attr name="switchBarMarginStart" format="dimension" /> 
<attr name="switchBarMarginEnd" format="dimension" /> 

将此添加到我的dimens.xml

添加了此我的styles.xml

<style name="switchBarTheme" parent="@android:style/Theme.Material"> 
    <item name="switchBarMarginStart">@dimen/switchbar_margin_start</item> 
    <item name="switchBarMarginEnd">@dimen/switchbar_margin_end</item> 
</style> 

将此添加到我的Activity.xml

<com.android.settings.widget.SwitchBar 
    android:id="@+id/switch_bar" 
    android:layout_height="?android:attr/actionBarSize" 
    android:layout_width="match_parent" 
    android:background="@drawable/switchbar_background" 
    android:theme="?attr/switchBarTheme" 
    /> 

如果这不是添加SwitchBar的一个好办法,我怎么能准确地复制SwitchBar在我的应用程序?

您的属性已经在设置中定义在SwitchBar.java中。这个文件涉及到marginend和其他特性。还有switch_bar id。请检查这个java文件,稍后您可以在此文件中使用键和属性,或者您可以定义不同的名称从那里。