按钮即使在新生成的活动中也不起作用,这是为什么?
来源:爱站网时间:2021-11-23编辑:网友分享
按钮即使在新生成的活动中也不起作用,这是为什么?这个问题是困扰了很多朋友很久的问题,今天爱站技术小编就给大家好好的说道说道,大家可以跟着参考一下。
问题描述
我正在创建一个android应用,该项目非常大。我花了大约3周的时间来开发此应用程序,并且有许多按钮都可以正常工作。几乎所有(可能有一个或两个例外)都定义在XML文件中,该文件在上下文中定义的类中调用该方法,如下所示:
(吐司是伪的)
android:onclick="doSomething"
public void doSomething(View view) {Toast "Hello world"};
例外是:
Button button1 = findViewById(R.id.helloWorldButton);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast"helloworld";
}
});
现在,即使是新产生的基本活动;默认的FAB按钮甚至都没有调用示例快餐栏。
我的问题根源;是否有可能发生的任何事情都会导致错误消息:
“在父或祖先上下文中,在视图上定义的android:onClick属性中找不到方法doSomething(View)”
甚至在新生成的活动中(由android studio生成。)>
XML活动:
XML内容:
Java:
package eatec.cookery;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.widget.Toast;
public class StepActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_step);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
helloWorldMethod();
}
});
}
public void helloWorldMethod() {
Toast.makeText(this, "hello world", Toast.LENGTH_SHORT).show();
}
}
我正在创建一个android应用,该项目非常大。我花了大约3周的时间来开发此应用程序,并且有许多按钮都可以正常工作。几乎所有(可能有一个或两个例外)...
思路:
先前的活动使用了设置内容,而不是使用新的意图开始新的活动。
以上内容就是爱站技术频道小编为大家分享的按钮即使在新生成的活动中也不起作用,这是为什么?看完以上分享之后,大家应该都知道这是为什么了吧。