2013-10-20 64 views
0

如果我的按鈕的其餘部分通過onClickListener鏈接到網頁,我該如何使按鈕打開一個活動?將我的主要活動中的第一個按鈕鏈接到網站後,如何將按鈕鏈接到第二個活動?

我去的網頁來利用在Eclipse中正確打開:

@Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
     Button b1=(Button)findViewById(R.id.button1); 

    public void onClick(View v) { 
      // TODO Auto-generated method stub 
      sendToCoaches(); 
     } 

    private void sendToCoaches() { 
     // TODO Auto-generated method stub 
      String url = "http://www.signal5crossfit.com/coaches/"; 
      Intent i = new Intent(Intent.ACTION_VIEW); 
      i.setData(android.net.Uri.parse(url)); 
      startActivity(i); 
     } 
}); 

b7.setOnClickListener(new View.OnClickListener(){ 
    @Override 
    public void onClick(View v){ 
    sendToContacts(); 

    } 

    public void sendToContacts() { 

      Intent intent = new Intent(AppActivity.this, App2Activity.class); 
      startActivity(intent); 
      } 
});}} 

我改成第二個例子是您在爲包括的onClick在我的xml文件,這是錯誤我得到。

了java.lang.RuntimeException:無法實例活動ComponentInfo {} com.Signal5.android/com.Signal5.android.App2Activity:顯示java.lang.NullPointerException

這是否意味着其指向無處?

+0

檢查了這一點:[?我如何添加上一個旁邊另一個按鈕意圖] (http://stackoverflow.com/questions/14534912/how-can-i-add-another-button-intent-beside-previous-one?rq=1) – atomman

回答

0

我猜你在xml佈局中使用android:onClick="onClick"

例子:

<Button android:id="@+id/button1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Button 1" 
    android:onClick="onClick" /> 

<Button android:id="@+id/button2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Button 2" 
    android:onClick="onClick" /> 

您可以檢查被點擊的視圖通過獲取其ID:View.getId()

public void onClick(View v) { 
    switch(v.getId()){ 
    case R.id.button1: 
     sendToCoaches(); 
     break; 

    case R.id.button2: 
     doSomethingElse(); 
     break; 
    } 
} 

這樣做將設置View.OnClickListener爲每個按鈕的另一種方法:

Button b1 = (Button) findViewById(R.id.button1); 
Button b2 = (Button) findViewById(R.id.button2); 

b1.setOnClickListener(new View.OnClickListener(){ 
     @Override 
     public void onClick(View v){ 
      sendToCoaches(); 
     } 
}); 

b2.setOnClickListener(new View.OnClickListener(){ 
     @Override 
     public void onClick(View v){ 
      doSomethingElse(); 
     } 
}); 
+0

你是在談論manifest.xml還是我的主。 XML(這是我的第一個佈局頁面)?感謝您的幫助 – user2899066

+0

這裏是我編輯它,它仍然崩潰。 – user2899066

+0

你應該編輯自己的問題,而不是我的答案。無論如何,我已經更新了我的答案。 –

相關問題