我对 android 按钮点击有疑问

I am getting doubts in android button clicking

你好,在我的代码中我有两个 activity 第一个 activity 有两个按钮,一个是可见的,另一个是不可见的,如果我点击第一个按钮,第二个按钮必须可见,我必须下一步activity 在那个 activity 上有一个按钮,如果单击该按钮它必须先出现 activity 现在第二个按钮必须显示第一个按钮必须不可见请帮助我。

mainactivity.java

package com.example.admin.mypratic;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {
    Button frst,scnd;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        frst=(Button)findViewById(R.id.firstbtn);
        scnd=(Button)findViewById(R.id.scndbtn);
        frst.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view){
                Intent intent=new Intent(MainActivity.this,Main2Activity.class);
                frst.setVisibility(View.GONE);
                scnd.setVisibility(View.VISIBLE);
                startActivity(intent);
                finish();
            }
        });
    }
}

mainactivity2.java

package com.example.admin.mypratic;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class Main2Activity extends AppCompatActivity {
Button b3;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        b3=(Button)findViewById(R.id.third);
        b3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent=new Intent(getApplicationContext(),MainActivity.class);
                startActivity(intent);
            }
        });
    }
}

如果你想在从第二个 activity 返回时看到按钮 2 而不是按钮 1,你不会先开始 activity 而是完成当前 activity (MainActivity2) 和 android 将首先从 Intent 堆栈中拉取 activity。 [此外,在第二个 activity 的呼叫保持它是 status/state 之后,您没有完成第一个 activity。 startActivity 重启您的 activity,因此触发 onCreate 并加载默认布局。

所以新修改的按钮代码: 在 mainActivity1

frst.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view){
            Intent intent=new Intent(this,Main2Activity.class);
            frst.setVisibility(View.GONE);
            scnd.setVisibility(View.VISIBLE);
            startActivity(intent);
        }
    });

秒activity

b3.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            finish();
        }
    });

不用说,您的按钮 2 需要有一个 onClickListener,以便按钮 1 在点击时可见。

伙计,干杯!