问题描述
我只是在查看设计指南并想知道无边框按钮.我目瞪口呆,试图在来源中找到,但我自己无法将其整合在一起.这是普通的 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>
这篇关于如何创建标准的无边框按钮(如提到的设计指南)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!