2010-02-19 44 views
1

我有一個基本的計算器應用程序,我正在做。兩個活動,主要和ResultView。簡單的活動開關不工作。沒有錯誤

我已經在它上面點擊了活動A上的一個按鈕以進入活動B.日誌說明活動B已成功啓動並「顯示」,新活動的標題加載,但主體不顯示。我用靜態文本添加了一個簡單的文本視圖..請參閱底部的result.xml。我也嘗試以編程方式插入信息,但那沒有做到。

當我調試程序時,我嘗試了用startActivity()以及ResultView類中的onCreate方法的第一行(我的活動「B」)調用活動時放置斷點,但程序從未命中第二個斷點。實際上,看起來Looper.class最終被調用。

的碼,該位被放置在按鈕處理程序上胡亞蓉答:

i.putExtra("test1",34); 

i.putExtra("test2",35); 

this.startActivity(i); 

這在OnCreate功能活性B:

public void OnCreate(Bundle 
     savedInstanceState){ 

     super.onCreate(savedInstanceState); 

     setContentView(R.layout.result); 

} 

活性是在清單內的「application」標籤:

<activity 
android:name="ResultView"></activity> 

如果我沒有提供足夠的信息,請告訴我。

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/llParent" 
    android:orientation="vertical" 
    android:padding="10dip" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content"> 

    <TextView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="10dip" 
     android:text="HELLO WORLD" 
    /> </LinearLayout> 

如果需要更多的信息,請讓我知道......簡而言之,「HELLO WORLD」完全不顯示。

回答

1

您確定public void行或之前的行包含@Override?如果不是的話,你並不是重寫OnCreate方法。該代碼應閱讀

@Override public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.result); 
} 

編輯
當然的 「O」 不能是一個大寫字母 「O」 的...

2

這不是OnCreate,這是onCreate(小寫字母O)。否則該方法將不會被覆蓋。 @override註釋如果省略,則不起作用,這僅僅是爲了程序員的可讀性。

+0

+1你當然是對的 - 他甚至不會重寫這個方法。我一直認爲Java不會接受和編譯大寫方法名稱? – 2010-02-19 12:44:13

+0

太棒了,我知道你們可以幫助新手出去。我會獎勵積分,但我不是註冊會員。 – Brandon 2010-02-19 20:31:09

相關問題