关于登录注册输入框底线线条被挡住的完美解决方案

最近在写登录注册页的时候遇到一个问题,关于EditText底线会被输入法挡住的问题,网上也搜索的相关资料,解决了部分问题,后来在设置代码中遇到了一些难受的bug,这里就此bug做一个记录,整理。
参考资料链接http://www.cnblogs.com/jerehedu/p/4194125.html

通过在项目的AndroidManifest.xml文件中界面对应的<activity>里加入android:windowSoftInputMode="stateVisible|adjustResize"后,下面是我的最终正确代码:
<EditText
        android:id="@+id/et_phone"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:singleLine="true"
        android:background="@null"
        android:hint="请输入手机号进行快捷登录"
        android:textColorHint="@color/white_p50"
        android:textCursorDrawable="@null"
        android:drawableLeft="@mipmap/ic_user"
        android:drawablePadding="8dp"
        android:paddingBottom="8dp"
        android:paddingTop="20dp"
        android:drawableBottom="@drawable/blue_edittext_line"
        android:textSize="16sp"
        android:textColor="@color/white" />
    这里有一个问题如果height设置了固定的高度,就依然会出现底线android:drawableBottom="@drawable/blue_edittext_line"被输入法挡住的问题,这个解决方案就是不设置固定高度,直接用
    android:paddingBottom="8dp"
    android:paddingTop="20dp"
    另外,底线距离输入框的距离也可以通过设置android:paddingBottom="8dp"来解决。
    android:background="@null"是使系统自带的背景消失。
    就这么简单,,
    总结一下主要代码块
        android:drawablePadding="8dp"
        android:paddingBottom="8dp"
        android:paddingTop="20dp"
        android:drawableBottom="@drawable/blue_edittext_line"

这是我的@drawable/blue_edittext_line

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<corners android:radius="0dip" />
<size
     android:height="1dp"
     android:width="2000dp" />  
    <solid android:color="#9000fff0" />
</shape>

如果直接画线布局,显示不出来(原因没有深查),也可以找美工要一个线做成.9图~
转载请标注原文链接

http://blog.csdn.net/you943047219/article/details/51289976

猜你喜欢

转载自blog.csdn.net/you943047219/article/details/51289976
今日推荐