Мое приложение падает при нажатии на TextView - PullRequest
0 голосов
/ 08 сентября 2018

Всякий раз, когда я запускаю свое приложение на своем телефоне, оно работает нормально и открывается правильно, но как только я щелкнул TextView для ввода текста, приложение перестало работать. Я получил подобное сообщение на форуме, но это не помогло мне. Не знаю, что на самом деле произошло. Новое в платформе Android. (пожалуйста, спросите меня, если что-то нужно по поводу вопроса)

MainActivity.java

       import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.RelativeLayout.LayoutParams;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

    public void ButtonClicked(View view){

        EditText EnteredAmount = (EditText) findViewById(R.id.EnteredAmount);
        Log.i("Amount Entered", EnteredAmount.getText().toString());
  }

LogCat Ошибка журнала

       --------- beginning of crash
09-08 22:29:11.790 25239-25239/com.example.admin.convertcurrency E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.admin.convertcurrency, PID: 25239
    java.lang.IllegalStateException: Could not find method clickTextView(View) in a parent or ancestor Context for android:onClick attribute defined on view class android.support.v7.widget.AppCompatEditText with id 'EnteredAmount'
        at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.resolveMethod(AppCompatViewInflater.java:423)
        at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:380)
        at android.view.View.performClick(View.java:5215)
        at android.view.View$PerformClick.run(View.java:21196)
        at android.os.Handler.handleCallback(Handler.java:742)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:157)
        at android.app.ActivityThread.main(ActivityThread.java:5603)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:774)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:652)


    --------- beginning of system
09-08 22:29:11.858 25239-25239/com.example.admin.convertcurrency I/Process: Sending signal. PID: 25239 SIG: 9

Ответы [ 2 ]

0 голосов
/ 08 сентября 2018

Возможно, вы можете использовать множественный clickListener для просмотра:

EditText EnteredAmount = (EditText) findViewById(R.id.EnteredAmount);
EnteredAmount.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        Toast.makeText(this, "I am clicked", Toast.LENGTH_SHORT).show;
    }
});
0 голосов
/ 08 сентября 2018
java.lang.IllegalStateException: Could not find method clickTextView(View) in a parent or ancestor Context for android:onClick attribute defined on view class android.support.v7.widget.AppCompatEditText with id 'EnteredAmount'

В вашем макете вы, кажется, имеете android:onClick="clickTextView". В вашей деятельности у вас нет метода с именем clickTextView(). Вам необходимо реализовать этот метод в своей деятельности:

public void clickTextView(View v) {
 // whatever you want to do
}

Кроме того, вы можете удалить атрибут android:onClick="clickTextView" из вашего <EditText> в вашем ресурсе макета.

...