Android 如何获取活动的当前内容视图?

Android 如何获取活动的当前内容视图?,android,onbackpressed,setcontentview,Android,Onbackpressed,Setcontentview,我有一个内容视图,在主活动上设置了主视图,当单击一个按钮时,它会设置另一个内容视图,在setContentView(R.layout.sec_content)中设置次要视图。我现在想要的是,当按下后退按钮时,如果当前视图是次要的,它应该设置主要内容,否则它应该关闭活动。我该怎么做? 这是我的密码 public class Ch_1 extends AppCompatActivity { Button men1, men2, men3; TextView tv1; @Override prot

我有一个内容视图,在主活动上设置了主视图,当单击一个按钮时,它会设置另一个内容视图,在setContentView(R.layout.sec_content)中设置次要视图。我现在想要的是,当按下后退按钮时,如果当前视图是次要的,它应该设置主要内容,否则它应该关闭活动。我该怎么做? 这是我的密码

public class Ch_1 extends AppCompatActivity {

Button men1, men2, men3;
TextView tv1;

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

    men1 = (Button)findViewById(R.id.men1);
    men1.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            setContentView(R.layout.activity_read__view);
            TextView tv1 = (TextView)findViewById(R.id.read_view);
            tv1.setText("This is text in READ_VIEW activity");




        }
    });


}
}


}

是的,我正在使用Android Studio。对不起,我是Android新手。与其创建两个布局,不如为您的备选布局创建第二个活动,您的按钮将打开第二个活动,您的OnBackpress将正常运行(带您回到上一个活动(布局)?是的,我可以这样做。但是我有许多按钮要添加到我的活动中,并相应地设置文本,因此如果我使用活动,我必须创建许多活动。我想为所有按钮设置相同布局中的文本。我只在返回按钮时卡住。有没有办法解决这个问题。比如为onBackButtonPressed设置参数,如果当前视图==辅助{setContentView(R.layout.prim_content)}否则关闭活动。创建2个活动而不是布局,如果不是,请尝试切换布局的可见性,而不是更改内容视图。如何设置2个视图,就像
setContentView
两次一样,它已经有一个父视图。有一个布尔变量。如果它是真的,则完成活动,否则它将删除当前视图nt view and add new viewNow当我按下“后退”按钮时,它会将我带到上一个布局,而不是关闭“活动”,这很好,但是当它返回到上一个布局时,现在没有按钮工作了?尝试使用onclick方法而不是像这样使用setonclickListern我更新帖子。它不工作。你能找出可能的原因吗。它在第一次尝试时工作正常,但当我通过按后退按钮返回到主要活动时,它不工作。
public class MainActivity extends AppCompatActivity {

Boolean isClose = true;
Button btn;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    btn = (Button) findViewById(R.id.button);
}

public void onpressed(View view){
    isClose = false;
    setContentView(R.layout.second);
}

@Override
public void onBackPressed() {
    if (isClose){
        finish();
    } else {
        setContentView(R.layout.activity_main);
        isClose = true;
    }
}