2011-08-17 502 views
-2

我已經創建了一些XML佈局和我的java文件,一些XML文件具有相同的按鈕ID,我創建onClick事件, 當我點擊這個按鈕它產生一個錯誤如下所示錯誤設置按鈕上的onclick事件

08-17 01:08:12.357: ERROR/AndroidRuntime(22434): java.lang.StackOverflowError 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at java.util.HashMap.containsKey(HashMap.java:313) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.provider.Settings$NameValueCache.getString(Settings.java:494) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.provider.Settings$System.getString(Settings.java:575) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.provider.Settings$System.getInt(Settings.java:624) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.media.AudioManager.querySoundEffectsEnabled(AudioManager.java:1089) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.media.AudioManager.playSoundEffect(AudioManager.java:1042) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.ViewRoot.playSoundEffect(ViewRoot.java:2478) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.playSoundEffect(View.java:8309) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2363) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(View.java:2364) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at com.widgets.CheckBoxClass.onClick(CheckBoxClass.java:44) 
08-17 01:08:12.357: ERROR/AndroidRuntime(22434):  at android.view.View.performClick(V 
+1

如何可以幫助你,如果你不提供任何代碼? –

+0

添加您的XML和Java代碼 – Smugrik

回答

1

我已經得到答案:

我已經使用該代碼:

public void onClick(View v) { 
    if(v.getId() == R.id.xCBApple){  
      Toast.makeText(CheckBoxClass.this,"Apple is Chedked",Toast.LENGTH_SHORT); 
    } 
    if(jBackButton.performClick()) 
    { 
      Intent intent = new Intent(CheckBoxClass.this,AndroidWidgetsActivity.class); 
      startActivity(intent); 
    } 
} 

,但我必須使用v.getId()== R.id.backButton代替jBackButton .performClick()和錯誤消失了,但我不知道performClick(),任何人都知道嗎?

感謝 拉胡爾