Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用按钮切换Android SDK的视图_Java_Android_Eclipse - Fatal编程技术网

Java 使用按钮切换Android SDK的视图

Java 使用按钮切换Android SDK的视图,java,android,eclipse,Java,Android,Eclipse,我在Android应用程序中按下按钮切换视图时遇到问题。代码在Eclipse中没有显示错误,但当单击按钮时,应用程序在模拟器中意外退出。我的代码如下。谢谢 public class Main extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super

我在Android应用程序中按下按钮切换视图时遇到问题。代码在Eclipse中没有显示错误,但当单击按钮时,应用程序在模拟器中意外退出。我的代码如下。谢谢

public class Main extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Button go = (Button)findViewById(R.id.goButton);
        go.setOnClickListener(mGoListener);     
    }

    private OnClickListener mGoListener = new OnClickListener() {
    public void onClick(View v) {           
            Intent intent = new Intent(Intent.ACTION_VIEW);
            intent.setClassName("android.taboo.Activities", "android.taboo.Activities.MainMenu");
            startActivity(intent);
        }
    };
}

public class MainMenu extends Activity{
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.mainmenu);

        TextView quickStart = (TextView)findViewById(R.id.quickStart);
        quickStart.setOnClickListener(mQuickStartListener);

        TextView gameSetup = (TextView)findViewById(R.id.gameSetup);
        gameSetup.setOnClickListener(mGameSetupListener);

        TextView settings = (TextView)findViewById(R.id.settings);
        settings.setOnClickListener(mSettingsListener);

        TextView wordEntry = (TextView)findViewById(R.id.wordEntry);
        wordEntry.setOnClickListener(mWordEntryListener);
    }

    //Listeners for MainMenu navigation buttons
    private OnClickListener mQuickStartListener = new OnClickListener() {
        public void onClick(View v) {
          setContentView(R.layout.quickstart);
        }
    };
    private OnClickListener mGameSetupListener = new OnClickListener() {
        public void onClick(View v) {
          setContentView(R.layout.gamesetup);
        }
    };
    private OnClickListener mSettingsListener = new OnClickListener() {
        public void onClick(View v) {
          setContentView(R.layout.settings);
        }
    };
    private OnClickListener mWordEntryListener = new OnClickListener() {
        public void onClick(View v) {
          setContentView(R.layout.word);
        }
    };
}

看看我这里的代码,这应该能帮你解决一些问题

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.content.Intent;

public class SmartApp extends Activity
{
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.intro);

        final Button firstTimeButton = (Button) findViewById(R.id.firstTimeButton);
        firstTimeButton.setOnClickListener(
                new View.OnClickListener()
        {
                        @Override
                        public void onClick(View v)
                        {
                                // TODO Auto-generated method stub
                                Intent userCreationIntent = new Intent(v.getContext(), UserCreation.class);
                                startActivityForResult(userCreationIntent, 0);
                        }
                });
    }
}

当用户单击“首次按钮”时,用户将进入“用户创建页面”。我相信你的代码,你有一些错误。将您的与我提供的进行比较,您应该能够看到差异并进行适当的修改。让我知道这是否有帮助

看看我这里的代码,这应该会对您有所帮助

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.content.Intent;

public class SmartApp extends Activity
{
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.intro);

        final Button firstTimeButton = (Button) findViewById(R.id.firstTimeButton);
        firstTimeButton.setOnClickListener(
                new View.OnClickListener()
        {
                        @Override
                        public void onClick(View v)
                        {
                                // TODO Auto-generated method stub
                                Intent userCreationIntent = new Intent(v.getContext(), UserCreation.class);
                                startActivityForResult(userCreationIntent, 0);
                        }
                });
    }
}

当用户单击“首次按钮”时,用户将进入“用户创建页面”。我相信你的代码,你有一些错误。将您的与我提供的进行比较,您应该能够看到差异并进行适当的修改。让我知道这是否有帮助

startActivityForResult以何种方式引用要加载的新活动?在这里,你只是在传递意图,而不是一项新的活动。我不完全确定。然而,这种方法对我和其他一些我曾经帮助和合作过的人都有效。试试看,让我知道它是否对你有用。好的,那么意图中的上下文和声明视图(本例中的按钮)作为final修复了它。另外,我忘了在AndroidManifest中声明第二个活动。仍然不完全理解为什么需要将视图声明为最终视图。谢谢你的帮助!startActivityForResult以何种方式引用要加载的新活动?在这里,你只是在传递意图,而不是一项新的活动。我不完全确定。然而,这种方法对我和其他一些我曾经帮助和合作过的人都有效。试试看,让我知道它是否对你有用。好的,那么意图中的上下文和声明视图(本例中的按钮)作为final修复了它。另外,我忘了在AndroidManifest中声明第二个活动。仍然不完全理解为什么需要将视图声明为最终视图。谢谢你的帮助!