如何在我的应用程序中添加一个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文件,稍后您可以在此文件中使用键和属性,或者您可以定义不同的名称从那里。