在android中启动活动

在android中启动活动,android,Android,我想做一个有两个活动的应用程序第一个活动有一个按钮来启动第二个活动。如何创建这是我要为第二个活动执行的代码 public class Numbers extends Activity { public static MediaPlayer mp = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.lay

我想做一个有两个活动的应用程序第一个活动有一个按钮来启动第二个活动。如何创建这是我要为第二个活动执行的代码

public class Numbers extends Activity {
public static MediaPlayer mp = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_numbers);
ViewPager viewPager = (ViewPager)findViewById(R.id.view_pager);
ImagePagerAdapter adapter = new ImagePagerAdapter();
viewPager.setAdapter(adapter);
}

private class ImagePagerAdapter extends PagerAdapter {
private int[] mImages = new int[]  {R.drawable.no1,R.drawable.no2,R.drawable.no3,R.drawable.no4,R.drawable.no5,R.drawable.no6,R.drawable.no7,R.drawable.no8,R.drawable.no9,};
private int[] mAudio= new int[]{R.raw.one,R.raw.two,R.raw.three,R.raw.four,R.raw.five,R.raw.six,R.raw.seven,R.raw.eight,R.raw.nine,};
@Override
public int getCount() {
return mImages.length;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == ((ImageView) object);
       }
     @Override
     public Object instantiateItem(ViewGroup container, int position) {
     Context context = Numbers.this;
     ImageView imageView = new ImageView(context);
     int padding =context.getResources().  
     getDimensionPixelSize(R.dimen.activity_vertical_margin);
     imageView.setPadding(padding, padding, padding, padding);
     imageView.setScaleType(ImageView.ScaleType.CENTER);
     imageView.setImageResource(mImages[position]);
     ((ViewPager) container).addView(imageView, 0);

if (mp != null) {mp.reset();
mp.release();
}
mp = MediaPlayer.create(Numbers.this,mAudio[position]);
mp.start();
return imageView;
            }

@Override
public void destroyItem(ViewGroup container, int position, Object object) {
((ViewPager) container).removeView((ImageView) object);
}
}
}

我需要用xml创建两个不同的布局活动吗?

将此添加到第一节课:

public void goTo(View view) {
    Intent intent = new Intent();
    intent.setClass(this, 2ndClassActivity.class);
    startActivity(intent);
}
在xml设计中,将这一行添加到按钮:

android:onClick="goTo"

在第一个活动中,当按下按钮时,执行以下操作:

Intent intent = new Intent(this, Numbers.class);
startActivity(intent);
您还需要在AndroidManifest中具有数字活动:

<activity android:name=".Numbers"></activity>

试试这个

    Button bt= (Button) findViewById(R.id.yourbtn_id);
    bt.setOnClickListener(new OnClickListener(){
        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
                Intent intent = new Intent(FirstActivity.this, Numbers.class);
                startActivity(intent);
        }           
    });

XML:

 <Button 
    android:id="@+id/yourbtn_id"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:onClick="BtnClick"
    android:text="Button" />
    public void BtnClick(View view) {
                Intent intent = new Intent(FirstActivity.this, Numbers.class);
                startActivity(intent);
    }
别忘了添加清单

    <activity
        android:name=".Numbers"/>

将以下内容添加到按钮的onClick方法或侦听器中

startActivity((new Intent(this, Numbers.class)));

是的,您必须创建两个布局。一个用于有按钮的第一个活动,另一个用于执行的另一个活动


请参阅:

注意:
未引用注释性内部类中的活动上下文。应该是
ActivityName。如果使用了侦听器,则为“是”。我已正确添加了此代码,但在mainfest.xml中进行更改后,我的第一个活动未启动。。。它只需启动并显示黑色窗口,除此之外:(
yourButton.setOnClickListener( new OnClickListener() {

   @Override
   public void onClick(View v) {

   Intent intent = new Intent(getApplicationContext() , NextActivity.class);

   startActivity(intent);

   }
});