gpt4 book ai didi

java - 单击第二个布局上的按钮不起作用

转载 作者:行者123 更新时间:2023-12-01 13:26:57 24 4
gpt4 key购买 nike

我想要的是:按一个按钮,然后应用程序转到另一个布局(页面)。在此页面上,您按一个按钮,然后文本框中会显示一些文本。我为每个布局做了一个 Activity 。

我收到此错误 E/AndroidRuntime(862):java.lang.IllegalStateException:在 Activity 类tweets.engineering.MainActivity中找不到方法calculateKfactor(View),用于 View 类android.widget.Button上id为“btnCalculateKf”的onClick处理程序

这是我的主要 Activity 中的代码,用于转到其他有效的布局!:)

更新了MainActivity

public void  Sheetmetal (View view){
if (view == mbtnSheetmetal){
setContentView(R.layout.activity_sheetmetal);
Intent intent = new Intent(this, SheetmetalActivity.class);
startActivity(intent);
}
}

这是我的第二个 Activity 的代码:SheetmetalActivity

package tweaks.engineeringsheet;

import tweaks.engineering.R;
import tweaks.engineering.R.id;
import tweaks.engineering.R.layout;
import android.widget.EditText;
import android.os.Bundle;
import android.app.Activity;
import android.graphics.Color;
import android.view.View;
import android.widget.Button;

public class SheetmetalActivity extends Activity{

//text box define
EditText mtxtKfactor;

//Button define
Button mbtnCalculateKf;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sheetmetal);

//connect mtxt"name" to txt"name"
mtxtKfactor = (EditText) findViewById(R.id.txtKfactor);

//connect mbtn"name" to btn"name"
mbtnCalculateKf = (Button) findViewById(R.id.btnCalculateKf);
}


public void calculatekfactor(View view){
if (view == mbtnCalculateKf){

mtxtKfactor.setText("works");
mtxtKfactor.setTextColor(Color.GREEN);

} //end if
}//end class
} // end program

最佳答案

我认为按钮的单击调用了一个名为 calculateKfactor
的方法将您的方法公开,否则它将找不到它。
请记住,如果不设置可见性修饰符,您将处于包可见性而非公共(public)可见性

编辑

您说您转到第二个 Activity (您的方法所在的位置)执行以下操作:

 public void  Sheetmetal (View view){
if (view == mbtnSheetmetal){
setContentView(R.layout.activity_sheetmetal);
}
}

这会更改主 Activity 的布局,因此当您看到按钮时,您仍然处于第一个 Activity 中,当您单击时,他会在 mainActivity 中搜索您的方法。
要开始另一项 Activity ,请按照下列步骤操作:

Intent intent = new Intent(this, YourSecondActivity.class);
startActivity(intent);

关于java - 单击第二个布局上的按钮不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21766488/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com