Java ClassCastException:android.widget.EditText无法强制转换为Models.EditTextMonitor
我在模型包中有类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
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