2011-07-30 47 views
2

我是Android開發新手,所以請幫助我。試圖使用意圖開始一個新的活動

我試圖啓動一個新的活動後,我按下按鈕,但似乎沒有工作。 這裏是我的代碼:

public class viewInfo extends Activity { 
private Button btn; 
public TextView txt; 
@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.info); 
    btn=(Button)findViewById(R.id.buy); 

    btn.setOnClickListener(new OnClickListener(){ 

     @Override 
     public void onClick(View v) { 
      Intent myIntent = new Intent(viewInfo.this, buyNow.class); 
      startActivity(myIntent); 

     } 

    }); 


} 

我也在清單中添加這一新的活動,但之後我按下按鈕,它不斷粉碎。 我在做什麼錯?

+0

將logcat輸出粘貼在它後面。 – Cristian

+0

您能否包含AndroidManifest.xml的摘錄?另外,logcat輸出中顯示了哪些錯誤? (如果您使用的是Eclipse,則可以從DDMS的角度訪​​問Logcat)。 – mportuesisf

+0

請讓我們知道您從logcat獲得的錯誤。 –

回答

4

最初誤讀了問題(爲了完整起見,下面的原始答案)。

請確保您有你在你的清單文件調用定義的活動:

喜歡的東西

<activity android:name=".buyNow" android:label="@string/app_name"></activity> 

application標籤內就足夠了。


這是原文的答案。

假設你有正確的按鈕ID - 在你的onclick試試這個:

Intent myIntent = new Intent(getApplicationContext(), buyNow.class); 
startActivity(myIntent); 

你可以添加一個日誌消息您的onClick裏面太,以確保它實際上是被調用。你可以看到的logcat日誌(通過adb logcat在命令行中運行)

+0

我在應用程序標籤內的清單中有活動:這裏是:我也嘗試過這種方法,但它仍然崩潰! – Alin

+0

也許是因爲你的buyNow類中的任何東西導致應用程序崩潰,你需要在eclipse調試器中執行一遍或者輸入日誌語句來查看在程序開始的地方,至少你需要爲我們提供logcat輸出,這樣我們可以幫到你。 – Martyn

0

儘量做到:

startActivity(新意圖(「[這是你的包name.what您在清單文件中聲明]」 ));

爲此,您需要寫信給你的清單:

希望它幫助。

0

您的buyNow活動可能存在導致錯誤的問題。

您確實需要使用logcat來追蹤錯誤。您可以通過點擊菜單項啓用此:

Window -> Show View -> Other...

從Android文件夾中選擇 「logcat的」

+0

我已經設法解決了這個問題!謝謝你的幫助! – Alin

+0

很高興聽到它。 。請記住加註任何有用的答案,並在適用的情況下接受正確答案。這爲我們的社區提供了一個有用的指標。​​您可以閱讀關於[接受答案如何工作]的更多信息(http://meta.stackexchange.com /問題/ 5234 /如何-不接受-的回答工作) – Merlin

0

你可以簡單地這樣做:

startActivity(new Intent(getBaseContext(),Activity.class)); 

Afther你registred您的活動在清單中:

 <activity 
     android:name="com.example.ActivityName" 
     android:label="@string/app_name" > 
    </activity>