2015-10-06 120 views
-3

Android Studio告訴我,我並不重寫我的onClick方法。我在Activity.xml文件中指定了onClick方法:無法重寫onClick方法

android:onClick="onClickBerechnen" 

我在做什麼錯?

public static final String BETRAG_KEY = "betrag"; 
public static final String BETRAG_ART = "art"; 
public static final String UST_PROZENT = "ust"; 

@Override 
public void onClickBerechnen(View v) { 


    final EditText txtBetrag = (EditText) findViewById(R.id.edt_betrag); 
    final float betrag = Float.parseFloat(txtBetrag.getText().toString()); 

    boolean isNetto = true; 
    final RadioGroup rg = (RadioGroup) findViewById(R.id.rg_art); 
    switch (rg.getCheckedRadioButtonId()) { 
     case R.id.rb_art_netto: isNetto = true; break; 
     case R.id.rb_art_brutto: isNetto = false; break; 
     default: 
    } 

    final Spinner spinner = (Spinner) findViewById(R.id.sp_umsatzsteuer); 
    final int pos = spinner.getSelectedItemPosition(); 
    final int[] prozentwerte = getResources().getIntArray(R.array.ust_werte); 
    final Intent intent = new Intent(this, ErgebnisActivity.class); 

    intent.putExtra(BETRAG_KEY, betrag); 
    intent.putExtra(BETRAG_ART, isNetto); 
    intent.putExtra(UST_PROZENT, prozentwerte); 

    startActivity(intent); 
} 
+2

啊一個真正的denglische Frage出了代碼視圖。 – rekire

回答

3

您不需要重寫該方法。刪除@Override,你很好。

當您在視圖的onClick處聲明方法時,您只需要在各自的活動類中定義該方法。

@override標記用於表示基類中的重寫方法。

+0

我刪除@Override和警告消失了,但我的應用程序仍然崩潰n當我使用按鈕 – iHuba

+0

多數民衆贊成在不同的問題:)嘗試檢查您的日誌n你會發現的東西。 –

+0

我看了一下我的日誌: – iHuba

1

@Override註解僅在您想覆蓋從超類繼承的方法並將其替換爲您自己的方法時使用。

就你而言,這只是用戶點擊按鈕時調用的一種常規方法,所以你不會覆蓋任何已經存在的「onClickBerechnen」方法。

0

對於我來說,情況看起來像下面這樣:
首先調試它實際崩潰的地方,只是顯示日誌而沒有實際說明它崩潰的位置並沒有幫助。
其次,我認爲你必須嘗試使用​​

YouActivity.this.findViewById(id); 

下一頁或先訪問您的ID,可以肯定的觀點實際上是你想要的看法:
檢查:

view.getId==R.id.btn_id