如何在Android中的活动/屏幕之间切换

时间:2013-07-19 09:50:36

标签: android android-activity

我的第一个活动Xm

  <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:background="#a5c63b"
     android:paddingBottom="@dimen/activity_vertical_margin"
     android:paddingLeft="@dimen/activity_horizontal_margin"
      android:paddingRight="@dimen/activity_horizontal_margin"
      android:paddingTop="@dimen/activity_vertical_margin"
      tools:context=".MainActivity" >
<Button
    android:id="@+id/btn1"
    android:layout_width="match_parent"
    android:layout_height="70dp"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="70dp"
    android:background="#434d23"
    android:text="Ok To Continue"
    android:onClick="frontt"
    android:textColor="#a5c63b" />
<ImageView
    android:id="@+id/imageView11"
    android:layout_width="250dp"
    android:layout_height="250dp"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:src="@drawable/question" />
<TextView
    android:id="@+id/txtview11"
    android:layout_width="match_parent"
    android:layout_height="20dp"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:text="Loading..."
    android:textSize="12dp" />
  </RelativeLayout>

这是我的第二个活动Xml

  <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
      android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:background="#a5c63b"
     android:paddingBottom="@dimen/activity_vertical_margin"
     android:paddingLeft="@dimen/activity_horizontal_margin"
     android:paddingRight="@dimen/activity_horizontal_margin"
      android:paddingTop="@dimen/activity_vertical_margin"
     tools:context=".MainActivity" >

<Button
    android:id="@+id/btn"
    android:layout_width="match_parent"
    android:layout_height="70dp"
     android:onClick="onClick"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="70dp"
    android:background="#434d23"
    android:text="OK"
    android:textColor="#a5c63b" />

<EditText
    android:id="@+id/txtedit"
    android:layout_width="match_parent"
    android:layout_height="20dp"
    android:layout_alignLeft="@+id/button1"
    android:layout_alignParentTop="true"
    android:layout_marginTop="50dp"
    android:background="#edf2db"
    android:ems="10"
    android:inputType="numberDecimal" />

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="250dp"
    android:layout_height="250dp"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:src="@drawable/question" />

<TextView
    android:id="@+id/txtview"
    android:layout_width="match_parent"
    android:layout_height="20dp"
    android:layout_alignBottom="@+id/txtedit"
    android:layout_alignLeft="@+id/txtedit"
    android:layout_marginBottom="21dp"
    android:text="Guess Single Digit Number"
    android:textSize="12dp" />

<TextView
    android:id="@+id/txtview2"
   android:layout_width="match_parent"
    android:layout_height="20dp"
    android:layout_alignLeft="@+id/btn"
    android:layout_below="@+id/btn"
    android:text="TextView" />

 </RelativeLayout>

这是我的第一个java文件代码

   package com.example.game;
   import android.media.MediaPlayer;
   import android.os.Bundle;
   import android.view.View;
   import android.view.View.OnClickListener;
    import android.app.Activity;
   import android.content.Intent;
     import android.view.Menu;
    import android.widget.Button;


public class MainActivity extends Activity {
  MediaPlayer btnsound;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.front);
    Button next = (Button) findViewById(R.id.btn1);


    btnsound = MediaPlayer.create(MainActivity.this,R.raw.game);
    btnsound.start();




    next.setOnClickListener(new OnClickListener()
{
    public void onClick(View v)
    {

        Intent nextScreen = new Intent(getApplicationContext(), CopyOfMainActivity.class);

        startActivity(nextScreen);
        //finish();
    }
 } );

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}        
  }

这是我的第二个java文件

   package com.example.game;
   import java.util.Random;
    import android.media.MediaPlayer;
    import android.os.Bundle;
   import android.view.View;
   import android.view.View.OnClickListener;
   import android.widget.Button;
   import android.widget.EditText;
   import android.widget.ImageView;
   import android.widget.TextView;
  import android.app.Activity;
  import android.view.Menu;

 public class CopyOfMainActivity extends Activity {
MediaPlayer btnsound;
Random random = new Random();
int randnumber = random.nextInt(10);
Button b2;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    btnsound = MediaPlayer.create(CopyOfMainActivity.this,R.raw.game);
    btnsound.start();
    b2= (Button) findViewById(R.id.btn);
    b2.setOnClickListener(new OnClickListener()
{
    public void onClick(View v)
    {

         EditText input = (EditText)findViewById(R.id.txtedit);
         TextView resultText = (TextView) findViewById(R.id.txtview2);
         String inputstring = input.getText().toString();
            int number = Integer.parseInt(inputstring);    
          if(randnumber==number)
          {
              resultText.setText("you win" );
              ImageView image = (ImageView) findViewById(R.id.imageView1);
                image.setImageResource(R.drawable.win);
          }
          else if (number>randnumber)
          {

              resultText.setText("you guess high number" );
              ImageView image = (ImageView) findViewById(R.id.imageView1);
                image.setImageResource(R.drawable.tryagain);
          }
          else if (number<randnumber)
          {

              resultText.setText("you guess low number" );
              ImageView image = (ImageView) findViewById(R.id.imageView1);
                image.setImageResource(R.drawable.lose);
          }
    }
 } );

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}       
}

我在First Activity xml布局上有一个按钮。运行应用程序后显示第一个活动布局但是每当我点击第一个xml上的按钮时,首先想要在点击后继续下一个布局,然后在LogCat选项卡中显示此错误,应用程序停止工作。

  

dalvik.system.NativeStart.main(Native Method)中的AndroidRuntime

我应该怎么做?

3 个答案:

答案 0 :(得分:2)

正确的方法如下:

 next.setOnClickListener(new OnClickListener()
{
    public void onClick(View v)
    {

        Intent nextScreen = new Intent(MainActivity.this, CopyOfMainActivity.class);
        startActivity(nextScreen);
        //finish();
    }
 } );

希望这会很好。

答案 1 :(得分:1)

如果您错过了,请将您的两项活动添加到清单文件中。

<application>

    <activity android:name="Activity1">           
    </activity>
    <activity android:name="Activity2">          
    </activity>

答案 2 :(得分:0)

 public void butt591(View v) {
        v.startAnimation(fivenineclick);
        Button but591 = (Button) findViewById(R.id.button591);
        but591.setBackgroundColor(Color.parseColor("#ee4035"));
        Intent bu591 = new Intent();
        bu591.setClass(this, level5q10.class);
        startActivity(bu591);
        finish();
    }
嘿,我复制在我的应用程序中粘贴了一部分代码591表示第5级第9个问题并选择第一个选项 这是错误的答案,所以点击选项它会将背景设置为#ee4035,这是红色,当用户按下此选项时,它将切换到5q10级别  我希望你能从这段代码中理解