自定义输入效果。清除文字按钮

时间:2019-01-03 23:46:23

标签: c# android xamarin.forms effects custom-renderer

我正在创建一个自定义条目,并且几乎所有内容都能正常工作。在我的大多数条目中,当条目中有文本或没有文本时,x按钮都会显示和隐藏。但是由于某种原因,当我单击其中一个条目时,它会清除其中的任何内容。

Tapping anywhere in that box clears the entry

在这里检查我的x是否被点击:

public class OnDrawableTouchListener : Java.Lang.Object, Android.Views.View.IOnTouchListener
{
    public bool OnTouch(Android.Views.View v, MotionEvent e)
    {
        if (v is EditText && e.Action == MotionEventActions.Up)
        {
            EditText editText = (EditText)v;
            if (!editText.Text.Equals(""))
                editText.SetCompoundDrawablesRelativeWithIntrinsicBounds(0, 0, Resource.Drawable.Subtraction20, 0);

            if (editText.GetCompoundDrawables()[2] != null)
            {
                //get actual position of tap
                if (e.RawX >= (editText.Right - editText.GetCompoundDrawables()[2].Bounds.Width()))
                {
                    //clear entry
                    editText.Text = string.Empty;
                    return true;
                }
            }
        }
        return false;
    }
}

here's a picture of the x that clears the text

0 个答案:

没有答案