Android 文本中的虚线

Android 文本中的虚线,android,android-edittext,dotted-line,Android,Android Edittext,Dotted Line,我需要在EditText字段中有虚线。以下是我到目前为止所做的尝试。但是没有达到我的目标。它什么也不显示。为什么缺少虚线?我错在哪里 main.xml中的EditText文件 <view xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/editText" android:layout_width="match_parent"

我需要在EditText字段中有虚线。以下是我到目前为止所做的尝试。但是没有达到我的目标。它什么也不显示。为什么缺少虚线?我错在哪里

main.xml中的EditText文件

 <view
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/editText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        class="com.xxx.yyy.MainActivity$LinedEditText"
        android:background="@android:color/transparent"
        android:inputType="textEmailAddress"
        android:maxHeight="30dp"
        android:singleLine="true"
        android:minHeight="30dp"
        android:textSize="13dp" />

在主要活动中

public static class LinedEditText extends EditText {
    private Rect mRect;
    private Paint mPaint;

    // we need this constructor for LayoutInflater
    public LinedEditText(Context context, AttributeSet attrs) {
        super(context, attrs);

        mRect = new Rect();
        mPaint = new Paint();

        mPaint.setARGB(255, 0, 0,0);
        mPaint.setStyle(Style.STROKE);
        mPaint.setPathEffect(new DashPathEffect(new float[] {1,2}, 0));
        mPaint.setColor(Color.RED);
    }

    @Override
    protected void onDraw(Canvas canvas) {
        int count = getLineCount();

        for (int i = 0; i < count; i++) {
            int baseline = getLineBounds(i, mRect);
            canvas.drawLine(mRect.left, baseline + 1, mRect.right, baseline + 1, mPaint);
        }

        super.onDraw(canvas);
    }
}
公共静态类LinedEditText扩展了EditText{
私人直肠;
私人油漆;
//我们需要这个构造器来实现LayoutFlater
public LinedEditText(上下文、属性集属性){
超级(上下文,attrs);
mRect=新的Rect();
mPaint=新油漆();
mPaint.setARGB(255,0,0,0);
mPaint.setStyle(Style.STROW);
setPathEffect(新的DashPathEffect(新的float[]{1,2},0));
mPaint.setColor(Color.RED);
}
@凌驾
受保护的void onDraw(画布){
int count=getLineCount();
for(int i=0;i
将其添加到视图xml中

android:ellipsize="end";

希望它能帮你……

你能给你想要的结果吗?我想要一个带有下划线的点的用户输入字段,用户可以在上面输入他的电子邮件id。你为什么不尝试在
编辑文本中设置一个带点的背景9png?