目前,我有以下底部登录按钮.
XML看起来像这样
<LinearLayout
android:background="?attr/welcomeBottomNavBarBackground"
android:orientation="horizontal"
android:id="@+id/sign_in_bottom_nav_bar"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true">
<Button
style="?android:attr/buttonBarButtonStyle"
android:id="@+id/sign_in_button"
android:layout_width="0dp"
android:width="0dp"
android:layout_weight="1.0"
android:layout_height="48dp"
android:gravity="center"
android:layout_gravity="center"
android:enabled="true"
android:textAllCaps="true"
android:text="@string/log_in" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
我想在按下按钮时删除按钮周围的填充(或者我应该将其称为边距?请参阅我最底部的p/s部分).
我试过了
<Button
...
...
android:minHeight="0dp"
android:minWidth="0dp" />
Run Code Online (Sandbox Code Playgroud)
它不起作用也没有效果.
我进一步尝试
<Button
...
...
android:background="@null"
android:minHeight="0dp"
android:minWidth="0dp" />
Run Code Online (Sandbox Code Playgroud)
按下时不再填充.然而,设计压制视觉效果的材料也将消失.
我可以知道在压制过程中删除按钮填充的最佳方法是什么,但保留材料设计按下的视觉效果?
我真的不知道是否应该称之为填充或边距.我希望实现的是,当我们按下底部区域时,按下视觉效果变化应覆盖整个100%底部区域(@+id/sign_in_bottom_nav_bar),而不是当前95%的底部区域.
今天我遇到了一个奇怪的布局问题,我没有从谷歌找到任何有用的答案.
在我的布局上,我有一个左边是文本的按钮,右边有一个图标.我希望文本是20dp左边距到按钮的边框然后我将paddingLeft设置为按钮,但它不起作用.偶然的机会,我为按钮设置了背景颜色,填充就像魅力一样.任何人都可以帮我解释这件事.
布局如下
<Buttonandroid:layout_width="fill_parent"
android:drawableRight="@drawable/right_arrow"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:layout_height="72dp"
android:text="Button"
android:id="@+id/btn"
android:gravity="center_vertical"
android:fontFamily="roboto regular"
android:textColor="#ffffff00"
style="@android:style/Widget.DeviceDefault.Button.Borderless" />
Run Code Online (Sandbox Code Playgroud)
谢谢你们!
搜索如何减少按钮内的填充,我在/sf/answers/1422660641/中发现我应该将我的按钮的最小高度设置为xml文件中的0dp.是的,它对我有用.
问题是:我想以编程方式创建我的按钮,setMinimumHeight(1)和setMinHeight(1)都不起作用.怎么做 ?
顺便问一下,这两种方法有什么区别?
谢谢 !