【发布时间】:2020-09-12 20:33:56
【问题描述】:
我正在编写代码,我需要从前一个屏幕的 textedit 中搜索项目。但是当我按下按钮搜索时,android studio崩溃了,我做错了什么?
package com.example.myapplication;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class Main2Activity extends AppCompatActivity {
TextView name;
Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
name = findViewById(R.id.textView3);
button = findViewById(R.id.Button2);
String Name = getIntent().getStringExtra("text");
name.setText(name.getText().toString()+ "" + Name);
name.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//https://www.google.com/#q=
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.google.com/#q=" + name.getText())));
}
});
}
}
我的崩溃堆栈跟踪:
D/AndroidRuntime:关闭 VM E/AndroidRuntime:致命异常: 主进程:com.example.myapplication,PID:17740 java.lang.IllegalStateException:找不到方法 onClick(View) 在 android:onClick 属性的父或祖先上下文中定义 在具有 id 的视图类 androidx.appcompat.widget.AppCompatButton 'Button2' 在 androidx.appcompat.app.AppCompatViewInflater$DeclaredOnClickListener.resolveMethod(AppCompatViewInflater.java:436) 在 androidx.appcompat.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:393) 在 android.view.View.performClick(View.java:7125) 在 android.view.View.performClickInternal(View.java:7102) 在 android.view.View.access$3500(View.java:801) 在 android.view.View$PerformClick.run(View.java:27336) 在 android.os.Handler.handleCallback(Handler.java:883) 在 android.os.Handler.dispatchMessage(Handler.java:100) 在 android.os.Looper.loop(Looper.java:214) 在 android.app.ActivityThread.main(ActivityThread.java:7356) 在 java.lang.reflect.Method.invoke(Native Method) 在 com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930) I/Process:发送信号。 PID: 17740 SIG: 9 断开连接 目标虚拟机,地址:'localhost:8621',传输:'socket'
【问题讨论】:
-
哦,我明白了,谢谢!