如何使整个EditText变白?

时间:2017-08-31 09:21:06

标签: android android-edittext android-alertdialog

我需要创建绝对白色的EditText字段。如果我让它可见,那就不行了。所以我决定把它变成白色。我只是用来从另一个设备读取数据然后将其保存到某个变量。我写了这个:

    final EditText input = new EditText(mContext);
    LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(0, 0);
    input.setLayoutParams(lp);
    input.setInputType(InputType.TYPE_CLASS_NUMBER);
    input.setTextColor(mContext.getResources().getColor(R.color.white_two));
    alertDialog.setView(input);

但是底线和光标仍然可见,我无法找到改变它的方法。或许您知道如何从隐形视图中获取数据。 另一点 - 这个视图在AlertDialog中,所以如果它不可见的取消按钮单击。我只能使用EditText,因为我有一个获取一些数据的设备,可以将它传输到Android应用程序,它只能将这些数据设置为EditText。

3 个答案:

答案 0 :(得分:1)

试试这个

input.setBackgroundResource(android.R.color.transparent);// remove underline from Edittext using this
input.setFocusable(false);
input.setCursorVisible(false);// hide the cursor from edittext

示例代码

    final EditText input = new EditText(mContext);
    LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(0, 0);
    input.setLayoutParams(lp);
    input.setInputType(InputType.TYPE_CLASS_NUMBER);
    input.setTextColor(mContext.getResources().getColor(R.color.white_two));

    input.setBackgroundResource(android.R.color.transparent);// remove underline from Edittext using this
    input.setFocusable(false);
    input.setCursorVisible(false);// hide the cursor from edittext
    alertDialog.setView(input);

答案 1 :(得分:0)

您可以使用此

 <android.support.v7.widget.AppCompatEditText
            android:id="@+id/username"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:backgroundTint="@color/white"
            android:drawableLeft="@drawable/user_icon"
            android:drawablePadding="5dp"
            android:textColor="@color/white"
            android:textCursorDrawable="@null"
            android:drawableTint="@color/white"
            android:hint="username"
            android:textColorHint="@color/white" />

答案 2 :(得分:0)

如果您不想显示您的edit_text,可以将其高度或宽度设为零。