2014-01-10 46 views
-2

我想創建一個應用程序,它有兩個活動,第一個活動有一個按鈕來啓動第二個活動。我如何創建這個這是我想要爲第二個活動執行的代碼。在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中創建兩個不同的佈局活動嗎?

回答

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

添加到您的第一類:

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

和XML設計這一行添加到該按鈕:

android:onClick="goTo" 
+0

我有正確地添加了這段代碼,但是在mainfest.xml中進行更改之後,我的第一個活動未啓動......它只是啓動並顯示黑色窗口: –

0

在你的第一個活動,當按下按鈕,這樣做:

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

您需要在AndroidManifest中擁有Numbers Activity:

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

將以下內容添加到onClick方法或按鈕的監聽器。

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

注意:'this'不涉及annonymous內部類中的活動上下文。應該是'ActivityName。這個' – Raghunandan

+0

如果使用Listener,那麼是的。 – Nfear

0
yourButton.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 

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

    startActivity(intent); 

    } 
});