简体   繁体   English

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

[英]My app crashes while clicking on a TextView

Whenever I run my application on my phone, it works fine and opens Correctly but as soon as I clicked the TextView for typing some text in that, The Application gets crashed. 每当我在手机上运行应用程序时,它都可以正常工作并正确打开,但是一旦我单击TextView在其中键入一些文本,应用程序就会崩溃。 I got a similar post like this on the forum but It couldn't help me out. 我在论坛上收到了类似的帖子,但是它帮不了我。 Don't know at all What actually happened. 完全不知道实际发生了什么。 New in Android Platform. Android平台的新功能。 (please, Ask me if need something regarding Question) (请问我是否需要有关“问题”的信息)

MainActivity.java 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 Error Log 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'

In your layout, you appear to have android:onClick="clickTextView" . 在您的布局中,您似乎拥有android:onClick="clickTextView" In your activity, you do not have a method named clickTextView() . 在您的活动中,没有名为clickTextView()的方法。 You need to implement that method in your activity: 您需要在活动中实现该方法:

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

Alternatively, you could remove the android:onClick="clickTextView" attribute from your <EditText> in your layout resource. 或者,您可以从布局资源中的<EditText>中删除android:onClick="clickTextView"属性。

Perhaps you can use the multiple clickListener for views: 也许您可以将多个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;
    }
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM