final EditText edt =findViewById(R.id.type_text);
final TextView txt= findViewById(R.id.empty_text);
Button btn = findViewById(R.id.button_add);
final String value = edt.getText().toString();
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
txt.append(value+"\n");
edt.setText("");
}
});
Это строка 40 --> final EditText edt =findViewById(R.id.type_text);
Логкэт сообщение Caused by: java.lang.ClassCastException:
android.support.design.widget.TextInputLayout cannot be cast to android.widget.EditText
at com.example.todo.activitity2.onCreate(activitity2.java:40)
ваш "type_text" - это TextInputLayout в вашем макете, и вы пытаетесь преобразовать его в текст редактирования, например "final EditText edt = findViewById (R.id.type_text);" вот почему это дает вам ошибку classCast. попробуйте использовать "final TextInputLayout tv =findViewById(R.id.type_text);"
Попробуйте бросить (TextInputEditText)




В XML-файле вашего макета есть TextInputLayout с идентификатором type_text, который вы пытаетесь преобразовать в Редактировать текст.
В вашем файле XML измените этот TextInputLayout на Редактировать текст.
ИЛИ
В вашем файле Class.java исправьте это:
final EditText edt = findViewById(R.id.type_text);
к
final TextInputLayout your_name = findViewById(R.id.type_text);
вам нужно изменить это:
final EditText edt = findViewById(R.id.type_text);
В правильный класс: (R.id.type_text - это TextInputLayout, и вы создали его как EditText, и это вызывает исключение)
final TextInputLayout edt = findViewById(R.id.type_text);
Пожалуйста, опубликуйте код вашего xml-файла. Так что мы можем помочь.