如何创建标准的无边框按钮(如提到的设计指南)? [英] How to create standard Borderless buttons (like in the design guideline mentioned)?
问题描述
我只是在查看设计指南并想知道无边框按钮.我目瞪口呆,试图在来源中找到,但我自己无法将其整合在一起.这是普通的 Button 小部件,但您添加了自定义(Android 默认)样式吗?如何制作这些无边框按钮(当然你可以将背景设置为空,但是我没有分隔线)?
I was just checking the design guidelines and wondering about the borderless buttons. I goggled and tried to find in the source but can't bring it together by myself. Is this the normal Button widget but you add a custom (Android default) style? How to make these borderless buttons (of course you can set the background to empty, but then I don't have the divider)?
此处链接到设计指南:
- http://developer.android.com/design/building-blocks/button.html
- http://developer.android.com/guide/主题/ui/controls/button.html#Borderless
推荐答案
澄清一些困惑:
这分两步完成:将按钮背景属性设置为 android:attr/selectableItemBackground 为您创建一个有反馈但没有背景的按钮.
This is done in 2 steps: Setting the button background attribute to android:attr/selectableItemBackground creates you a button with feedback but no background.
android:background="?android:attr/selectableItemBackground"
将无边框按钮与其余布局分开的线由具有背景的视图完成 android:attr/dividerVertical
The line to divide the borderless button from the rest of you layout is done by a view with the background android:attr/dividerVertical
android:background="?android:attr/dividerVertical"
为了更好地理解这里是屏幕底部的确定"/取消"无边框按钮组合的布局(如上图右图所示).
For a better understanding here is a layout for a OK / Cancel borderless button combination at the bottom of your screen (like in the right picture above).
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="48dp"
android:layout_alignParentBottom="true">
<View
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginLeft="4dip"
android:layout_marginRight="4dip"
android:background="?android:attr/dividerVertical"
android:layout_alignParentTop="true"/>
<View
android:id="@+id/ViewColorPickerHelper"
android:layout_width="1dip"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:layout_marginBottom="4dip"
android:layout_marginTop="4dip"
android:background="?android:attr/dividerVertical"
android:layout_centerHorizontal="true"/>
<Button
android:id="@+id/BtnColorPickerCancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_toLeftOf="@id/ViewColorPickerHelper"
android:background="?android:attr/selectableItemBackground"
android:text="@android:string/cancel"
android:layout_alignParentBottom="true"/>
<Button
android:id="@+id/BtnColorPickerOk"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:background="?android:attr/selectableItemBackground"
android:text="@android:string/ok"
android:layout_alignParentBottom="true"
android:layout_toRightOf="@id/ViewColorPickerHelper"/>
</RelativeLayout>
这篇关于如何创建标准的无边框按钮(如提到的设计指南)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!