java - 使用带有不同类内部代码的按钮

标签 java android android-studio button android-button

我正在尝试制作一个应用程序,并且我有不同类中按钮的代码。当我启动应用程序并单击第一个按钮时,它会将我带到该按钮所在的不同布局。但是当我单击此按钮时,它不会执行任何操作,只是显示一个小的单击动画。

第一个按钮代码:

public class TextAdd extends AppCompatActivity {
public static   EditText Text;
public static   Button Set;
public static   String[] Checkagainst = new String[1000];

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.Text_Checker);
    Text = (EditText) findViewById(R.id.LPN);
    Set = (Button) findViewById(R.id.Set);

    Set.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            String Text_Value = Text.getText().toString();
            if (!Arrays.asList(Checkagainst).contains(Text_Value) && Text_Value.length() >= 1 && Text_Value.length() <= 7) {
               setContentView(R.layout.add);


                for (int i = 0; i < Checkagainst.length; i++) {
                    if (Checkagainst[i] == null) {
                        Checkagainst[i] = Text_Value;
                        break;
                    }
                }

            } else if (Arrays.asList(Checkagainst).contains(Text_Value) && Text_Value.length() >= 1 && Text_Value.length() <= 7) {
                setContentView(R.layout.have);

            }
        }
    });

}
}

第二个按钮代码:

public class Have extends AppCompatActivity {

private Button HaveBack;
private TextView Have;
@Override
protected void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    setContentView(R.layout.have);
    HaveBack = (Button) findViewById(R.id.HaveBack);
    Have= (TextView) findViewById(R.id.Have);
    String Text_Value= TextAdd.License.getText().toString();
    String Extra = Text_Value + " is already part of Your license plates";
    Have.setText(Extra);
    HaveBack.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            setContentView(R.layout.Text_Checker);
        }
    });
}
}

有人知道这是怎么回事吗?如果可以的话请帮帮我。

最佳答案

您应该在 onCreate() 方法中仅使用一次 setContentView() 。多次调用是不正确的。如果您想在当前布局上方显示一个小布局,则应该使用对话框,如果您想在所有内容上方显示完全不同的布局,则必须使用 Intents 转到另一个 Activity 并在该 Activity 中完成其余工作。

此外,在变量和对象名称的开头使用小写字母,类名称以大写字母开头。这就是了解什么是类、什么是对象的标准。例如

Button firstButton, secondButton;

关于java - 使用带有不同类内部代码的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51575138/

相关文章:

opencv - 如何将该项目移植到Android Studio?

android - 程序类型已经存在 : android. support.v4.app.INotificationSideChannel$Stub$Proxy

java - 如何以编程方式启动 OSGi

java - 在 Maven 中解析或编译循环依赖

java - 适用于 Android slider 菜单的 slider 图标

android - 从 XYPlot 中删除图例

android - AdRequest.Builder 无法解析为类型

android - 根据 Android 版本从选择列表中隐藏 AppWidget

java - ObjectDeletion 如何在 java 卡中工作?

android-studio - 如何修复 "Design editor is unavailable until a successful build"错误?