Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ClassCastException:android.widget.EditText无法强制转换为Models.EditTextMonitor_Java_Android_Android Edittext_Classcastexception - Fatal编程技术网

Java ClassCastException:android.widget.EditText无法强制转换为Models.EditTextMonitor

Java ClassCastException:android.widget.EditText无法强制转换为Models.EditTextMonitor,java,android,android-edittext,classcastexception,Java,Android,Android Edittext,Classcastexception,我在模型包中有类EditTextMonitor,例如: public class EditTextMonitor extends EditText{ private final Context mcontext; // Just the constructors to create a new EditText... public EditTextMonitor(Context context) { super(context); this.mcontext = context

我在模型包中有类EditTextMonitor,例如:

public class EditTextMonitor extends EditText{
private final Context mcontext; // Just the constructors to create a new EditText...

public EditTextMonitor(Context context) {
    super(context);
    this.mcontext = context;
}

public EditTextMonitor(Context context, AttributeSet attrs) {
    super(context, attrs);
    this.mcontext = context;
}

public EditTextMonitor(Context context, AttributeSet attrs, int defStyle) {
    super(context, attrs, defStyle);
    this.mcontext = context;
}


@Override
public boolean onTextContextMenuItem(int id) {
    // Do your thing:
    boolean consumed = super.onTextContextMenuItem(id);
    // React:
    switch (id){
        case android.R.id.copy:
            onTextCopy();
        case android.R.id.paste:
            onTextCopy();
    }
    return consumed;
}
public void onTextCopy(){
    ((TextEditorActivity)mcontext).startAmode();
}
}
在我的java类中:EditTextMonitor editor=(EditTextMonitor)findViewById(R.id.texteditor)

在xml视图文件中定义了:

<Models.EditTextMonitor
        android:id="@+id/texteditor"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center_horizontal"
        android:layout_margin="5dp"
        android:background="@color/white"
        android:ems="10"
        android:gravity="top"
        android:inputType="textMultiLine"
        android:padding="5dp"
        android:textAllCaps="false" />

我只在平板电脑设备上出现此错误。

在xml中,使用类名和正确的包名作为TextEditorActivity

com.atompark.atompark_sms.TextEditorActivity

那么您可能没有更改所有布局以使用该类。确保您在另一个资源集中(例如,
layout/sw600dp/
)没有布局,该资源集中有
EditText
。在我的所有布局xml文件中,使用Models.EditTextMonitor可能需要使用完整的包名,而不仅仅是模型。EditTextMonitor与您的PackageName.Models.EditTextMonitor.EditTextMonitor类似,在包名“Models”中定义?是EditTextMonitor在包名“Models”中定义。不在com.atompark.atompark\u sms中
com.atompark.atompark_sms.TextEditorActivity