daz*_*000 22 android android-layout material-design android-textinputlayout
如下面的屏幕截图所示,使用a TextInputLayout
换行时似乎会自动添加左边距EditText
.
EditText
在布局XML中没有添加填充,但是当渲染视图时,似乎在左边有填充EditText
.比较TextView
下面的时候你可以看到这个TextInputLayout
.
如何禁用此左侧填充?
谢谢!
And*_*tor 32
您可以将内部 EditText 上的开始和结束填充设置为 0dp。
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.google.android.material.textfield.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingStart="0dp"
android:paddingEnd="0dp" />
</com.google.android.material.textfield.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)
这是显示布局边界打开的屏幕截图,因此您可以看到提示一直到视图的边缘。
kri*_*son 14
TextInputLayout
是a LinearLayout
,所以你应该能够指定负边距或填充,例如
android:layout_marginLeft="-2dp"
android:layout_marginStart="-2dp"
Run Code Online (Sandbox Code Playgroud)
这将抵消你想要消除的空间.
该-2dp
值只是一个猜测; 调整值,直到它按照您想要的方式排列.
通过TextInputLayout
包含在材料组件库中,您可以使用自定义样式来减少填充。
只需使用类似的东西:
<com.google.android.material.textfield.TextInputLayout
....
android:hint="Hint text"
style="@style/My.TextInputLayout.FilledBox.Padding" >
Run Code Online (Sandbox Code Playgroud)
然后您可以为EditText
usingmaterialThemeOverlay
属性定义自定义样式:
<style name="My.TextInputLayout.FilledBox.Padding" parent="Widget.MaterialComponents.TextInputLayout.FilledBox">
<item name="materialThemeOverlay">@style/MyThemeOverlayFilledPadding</item>
</style>
<style name="MyThemeOverlayFilledPadding">
<item name="editTextStyle">@style/MyTextInputEditText_filledBox_padding</item>
</style>
<style name="MyTextInputEditText_filledBox_padding" parent="@style/Widget.MaterialComponents.TextInputEditText.FilledBox">
<!-- left and right padding -->
<item name="android:paddingStart" ns2:ignore="NewApi">2dp</item>
<item name="android:paddingEnd" ns2:ignore="NewApi">2dp</item>
<item name="android:paddingLeft">2dp</item>
<item name="android:paddingRight">2dp</item>
<!-- top and bottom padding -->
<item name="android:paddingTop">28dp</item>
<item name="android:paddingBottom">12dp</item>
</style>
Run Code Online (Sandbox Code Playgroud)
这里的最终结果:
注意:它至少需要材质组件库的 1.1.0 版本。
归档时间: |
|
查看次数: |
5614 次 |
最近记录: |