package com.example.luke.sinhalasindu;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class HomePage extends Activity implements OnClickListener {
Button bntoartistpage;
Button bntonewmp3page;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home_page);
bntoartistpage = (Button) findViewById(R.id.bntoartistpage);
bntoartistpage.setOnClickListener(this);
bntonewmp3page = (Button) findViewById(R.id.bntonewmp3page);
bntonewmp3page.setOnClickListener(this);
}
@Override
public void onClick(View view) {
Intent inent = new Intent(this, Artist.class);
// calling an activity using <intent-filter> action name
// Intent inent = new Intent("com.example.luke.sinhalasindu");
startActivity(inent); }
@Override
public void onClick(View view){
Intent inent = new Intent(this, NewMp3.class);
// calling an activity using <intent-filter> action name
// Intent inent = new Intent("com.example.luke.sinhalasindu");
startActivity(inent);
}
}
}
回答
,而不是驗證碼:
bntoartistpage = (Button) findViewById(R.id.bntoartistpage);
bntoartistpage.setOnClickListener(this);
bntonewmp3page = (Button) findViewById(R.id.bntonewmp3page);
bntonewmp3page.setOnClickListener(this);
試試這個代碼
bntoartistpage = (Button) findViewById(R.id.bntoartistpage);
bntoartistpage.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent inent = new Intent(HomePage.this, Artist.class);
// calling an activity using <intent-filter> action name
// Intent inent = new Intent("com.example.luke.sinhalasindu");
startActivity(inent);
}
});
bntonewmp3page = (Button) findViewById(R.id.bntonewmp3page);
bntonewmp3page.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent inent = new Intent(HomePage.this, NewMp3.class);
// calling an activity using <intent-filter> action name
// Intent inent = new Intent("com.example.luke.sinhalasindu");
startActivity(inent);
}
});
而且也在你AndroidManifest.xml
聲明這兩個Activity
類Artist
和NewMp3
像這樣的文件:
<activity android:name=" com.example.luke.sinhalasindu.Artist" />
<activity android:name=" com.example.luke.sinhalasindu.NewMp3" />
您是否可以編輯答案以包含註釋,他需要在Manifest文件中註冊這些活動? –
您不能覆蓋onClick
方法兩次。無論是使用內部類setOnClickListener
或使用這種方法:
@Override
public void onClick(View view) {
Intent inent = null;
switch(v.getId()) {
case R.id.bntoartistpage:
intent = new Intent(ThisAct.this, Activity1.class);
break;
case R.id.bntonewmp3page:
intent = new Intent(ThisAct.this, Activity2.class);
break;
}
startActivity(inent);
}
而且在清單正確地註冊新的活動。
希望這會有所幫助。
另一種方法:在onclick()中使用switch-case來選擇動作。 v.getId()將返回點擊按鈕的ID。
@Override
public void onClick(View v) {
switch(v.getId()) {
case R.id.bntoartistpage:
// do stuff;
Intent inent = new Intent(HomePage.this, Artist.class);
startActivity(inent);
break;
case R.id.bntonewmp3page:
// do stuff;
Intent inent = new Intent(HomePage.this, NewMp3.class);
startActivity(inent);
break;
}
不工作此代碼 – luke
是否按原樣使用代碼?尤其是「HomePage.this」裏面的意圖? –
你有沒有在清單中註冊這些活動?如果上述所有事情都完成了,那麼你得到的錯誤是什麼? –
雖然我從你的代碼理解你感到困惑
如何處理多個按鈕偵聽重寫的onClick()方法?
所有你需要做的是,你必須申請任何做出邏輯決定像if-else
或switch-case
的onClick()
方法裏面如下
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.bntoartistpage:
Intent inent = new Intent(this, Artist.class);
startActivity(inent);
break;
case R.id.bntonewmp3page:
Intent inent = new Intent(this, NewMp3.class);
startActivity(inent);
break;
}
}
有使兩個或兩個以上不同的按鈕的最簡單方法做同樣的活動。
當你實現OnClickListener
到Activity
或Fragment
你只需要編寫onClick()
方法一次.. 也不像是一個按鈕的一種方法。你可以處理所有的OnClickListener
進入該方法..
所以在你的情況下,你可以寫下你的代碼,如下所示。
public class HomePage extends Activity implements OnClickListener {
Button bntoartistpage;
Button bntonewmp3page;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home_page);
bntoartistpage = (Button) findViewById(R.id.bntoartistpage);
bntoartistpage.setOnClickListener(this);
bntonewmp3page = (Button) findViewById(R.id.bntonewmp3page);
bntonewmp3page.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.bntoartistpage:
startActivity(new Intent(getBaseContext(), NEWCLASS.class));
break;
case R.id.bntonewmp3page:
startActivity(new Intent(getBaseContext(), NEWCLASS.class));
break;
case R.id.OTHERCASES:
//other functions
break;
default:
break;
}
}
}
@盧克:請參考這..這可能會幫助你。 –
- 1. 如何做兩個按鈕,打開2佈局
- 2. Android Studio - 打開活動的按鈕 - 打開新活動的另一個按鈕
- 3. 將一個活動中的兩個按鈕連接到另外兩個活動
- 4. 後退按鈕關閉兩個活動?
- 5. 意圖兩個按鈕到兩個不同的活動
- 6. 如何製作一個按鈕,打開另一個活動
- 7. 如何在第二個活動中打開多個按鈕?
- 8. 如何使一個按鈕打開一個新的活動
- 9. Android - 開始兩個活動
- 10. 的Android如何連接兩個活動,如果按鈕,如果
- 11. 活動打開兩次
- 12. 如何從按鈕打開webview活動
- 13. 兩個web_view兩個活動
- 14. 我有四個按鈕指向單個活動,如何找出哪個按鈕導致活動打開?
- 15. 從兩個按鈕中按順序調用兩個活動是否正常
- 16. 如何打開一個活動兩次但內容不同?
- 17. 如何使用兩個按鈕更改活動背景?
- 18. 移動兩個按鈕
- 19. 如何在Android中使用按鈕打開另一個活動
- 20. 如何在單擊同一活動中的兩個不同按鈕時導航到兩個不同的活動?
- 21. 三個活動,兩個按鈕和一個答案
- 22. ActionScript一次激活兩個按鈕
- 23. 兩個按鈕打開每個他自己的覆蓋內容
- 24. 如何設置兩個按鈕來打開/關閉iOS的振動?
- 25. 如何給一個按鈕兩個URL?
- 26. 使兩個按鈕setOnClickListener和onClick在一個活動OTP驗證
- 27. 有兩個工作活動的單個按鈕
- 28. 如何合併兩個長按按鈕
- 29. 一個按鈕兩個動作
- 30. 兩個動作與一個按鈕android
你能解釋一下問題嗎?你有什麼嘗試?你卡在哪裏? –
您使用了錯誤的方法來實現按鈕onclick方法。 – Shvet
我想從一個按鈕 和另一個按鈕的其他佈局打開佈局 – luke