ошибка установки события onclick на кнопку - PullRequest
0 голосов
/ 17 августа 2011

у меня есть несколько xml-макетов и java-файлов, некоторые xml-файлы имеют одинаковый идентификатор кнопки, и я создаю событие 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 Ответ

1 голос
/ 18 августа 2011

Я получил ответ:

Я использовал этот код:

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.executeClick () и ошибка исчезла, но я не понимаю, что за executeClick () кто-нибудь может знать об этом?

Спасибо, Рахул

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...