按钮单击开关xml布局页面

时间:2013-02-06 07:36:44

标签: android xml eclipse android-intent android-manifest

我知道这个问题已经被问过,但是当我这样做时出现了错误:

Intent toNextPage = new Intent(this, After_report_page.class); startActivity(toNextPage);

我该如何解决这个问题(我希望按钮点击xml布局切换)?

谢谢你, 波阿斯

4 个答案:

答案 0 :(得分:1)

使用Activity Context启动下一个Activity而不是View as:

Intent toNextPage = new Intent(Your_current_Activity.this,
                                             After_report_page.class); 
startActivity(toNextPage);

或者您可以使用view.getContext()来获取启动新活动的上下文:

Intent toNextPage = new Intent(view.getContext(), After_report_page.class); 
startActivity(toNextPage);

答案 1 :(得分:1)

试试这个:

      Button.setOnClickListener(new View.OnClickListener() {

                    public void onClick(View v) {
                        // TODO Auto-generated method stub

                        Intent toNextPage = new Intent(YourActivity.this, After_report_page.class);
                        startActivity(toNextPage);
                    }
                });

如果您将此作为intent的参数放在click事件中,它将无效。

答案 2 :(得分:1)

尝试如下:

private Context mContext;
   public class IntentActionDemo extends Activity 
  {
     mContext=IntentActionDemo.this;

     @Override
     public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);        
    Button butn = (Button) findViewById(R.id.intentButton);

        butn.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
      Intent myIntent = new Intent(mContext, After_report_page.class);
      startActivity(myIntent);
     }
    });

答案 3 :(得分:0)

//我昨天使用单选按钮

这么简单

使用无线电检查在一个xml中制作2个布局,点击其中一个,并使您的布局可见性消失并且可见vise verse。

final RadioButton ccDoc=(RadioButton)findViewById(R.id.cc_doc);
        ccDoc.setOnCheckedChangeListener(new OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                // TODO Auto-generated method stub
                if(ccDoc.isChecked()){
                    findViewById(R.id.cc_doc_lay).setVisibility(View.VISIBLE);
                    findViewById(R.id.outside_doc_lay).setVisibility(View.GONE);
                }else {
                    findViewById(R.id.outside_doc_lay).setVisibility(View.VISIBLE);
                    findViewById(R.id.cc_doc_lay).setVisibility(View.GONE);
                }
            }
        });