在android中启动Activity

时间:2014-01-10 08:52:00

标签: android

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

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中创建两个不同的布局活动吗?

6 个答案:

答案 0 :(得分:2)

试试这个..

    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" />

<强> JAVA:

    public void BtnClick(View view) {
                Intent intent = new Intent(FirstActivity.this, Numbers.class);
                startActivity(intent);
    }

不要忘记添加清单。

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

答案 1 :(得分:0)

将此添加到您的第一堂课:

public void goTo(View view) {
    Intent intent = new Intent();
    intent.setClass(this, 2ndClassActivity.class);
    startActivity(intent);
}

并在xml设计中将此行添加到按钮:

android:onClick="goTo"

答案 2 :(得分:0)

在第一个Activity中,按下按钮时,执行:

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

您还需要AndroidManifest中的Numbers活动:

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

答案 3 :(得分:0)

将以下内容添加到按钮的onClick方法或Listener中。

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

答案 4 :(得分:0)

yourButton.setOnClickListener( new OnClickListener() {

   @Override
   public void onClick(View v) {

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

   startActivity(intent);

   }
});

答案 5 :(得分:0)

是的,您必须为第一个活动创建两个布局,其中包含您的按钮,第二个布局用于您执行的另一个活动

请参阅:http://theopentutorials.com/tutorials/android/android-sending-data-from-one-activity-to-another/