按钮未出现在设计视图android studio中

时间:2018-08-24 20:46:19

标签: java android android-activity

构建一个android应用。这个想法是打开第二个活动。 在构建时,会得到一个错误类接口或枚举,它预期在“ Activity {Button button ...”以及“ void”的地方显示 我有两个Java文件。 MainActivity.java和Main2Activity.java。问题似乎出在第一个。代码跟随包

package com.cancunsteve.aboutcancunsteve;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View.OnClickListener;
import android.widget.Button;


public class MainActivity extends AppCompatActivity {
Button button;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    // Get the view from activity_main.xml
    setContentView(R.layout.activity_main);

    // Locate the button in activity_main.xml
    button = (Button) findViewById(R.id.MyButton);

    // Capture button clicks
    button.setOnClickListener(new OnClickListener() {
        public void onClick(View arg0) {

            // Start NewActivity.class
            Intent myIntent = new Intent(MainActivity.this,
                    MainActivity2.class);
            startActivity(myIntent);
        }
    });
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}
}

2 个答案:

答案 0 :(得分:0)

如果您说第二个活动称为MainActivity2,则Intent应该像这样:

Intent myIntent = new Intent(MainActivity.this,
                    MainActivity2.class);

答案 1 :(得分:0)

您的代码有很多错误!该代码永远不会编译!

首先,您有两个重复的方法!

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

}

MainActivity类中的这个

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    // Get the view from activity_main.xml
    setContentView(R.layout.activity_main);

    // Locate the button in activity_main.xml
    button = (Button) findViewById(R.id.MyButton);

    // Capture button clicks
    button.setOnClickListener(new OnClickListener() {
        public void onClick(View arg0) {

            // Start NewActivity.class
            Intent myIntent = new Intent(MainActivity.this,
                    NewActivity.class);
            startActivity(myIntent);
        }
    });
}

第二,您的方法之一是在MainActivity类之外声明的!我认为这就是您的问题所在! Java认为这一行:public class MainActivity extends Activity {...}是一个枚举或一个类!这就是错误的意思!

删除第一个onCreate方法,您的问题应该得到解决!