单击TextView时我的应用程序崩溃了

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单击TextView时我的应用程序崩溃了相关的知识,希望对你有一定的参考价值。

每当我在手机上运行我的应用程序时,它运行正常并且正确打开但是当我单击TextView键入一些文本时,应用程序就会崩溃。我在论坛上收到了类似这样的帖子,但它无法帮助我。根本不知道究竟发生了什么。 android平台新功能。 (请问我是否需要有关问题的内容)

main activity.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
答案
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>属性。

另一答案

也许您可以对视图使用多个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;
    }
});

以上是关于单击TextView时我的应用程序崩溃了的主要内容,如果未能解决你的问题,请参考以下文章

使用 Kotlin Coroutines 更新我的 TextView 会导致它崩溃:

在片段中显示 DatePickerDialog

将一个片段调用到另一个片段时更改标题TextView

片段中的Android按钮单击方法(崩溃)

Android 应用程序片段不断崩溃

为什么单击保存按钮时我的vba用户表单崩溃?