Android中的自定义EditText:您如何在XML Layout中引用?

时间:2011-05-23 04:53:51

标签: android xml layout android-edittext android-custom-view

我创建了一个名为MyEditText的自定义EditText对象(扩展了EditText),以便覆盖onSelectionChanged(int start,int end)方法。当我这样做并尝试在我的XML布局中引用这个对象类型时,我总是得到一个错误膨胀类消息。这就是我目前所拥有的:

<cse.intro.networking.security.MyEditText
     android:layout_width="match_parent" android:id="@+id/editText2"
     android:layout_height="match_parent" android:text="@string/editTextBoxInit">
</cse.intro.networking.security.MyEditText>

MyEditText.java:

package cse.intro.networking.security;

import android.content.Context;
import android.util.Log;
import android.widget.EditText;

public class MyEditText extends EditText {
    private final String tag = "SimpleGUI";
    public MyEditText(Context context) {
        super(context);
    }

    @Override
    public void onSelectionChanged(int selStart, int selEnd) {
        Log.v(tag, "onSelectionChanged!");
    }

}

2 个答案:

答案 0 :(得分:4)

将此构造函数添加到自定义类

public MyEditText(Context context,AttributeSet attr) {
    super(context,attr);
    // TODO Auto-generated constructor stub
}

答案 1 :(得分:1)

如果要在XML布局中使用它,则需要覆盖EditText的所有构造函数。