2013-12-20 31 views
0

我是編程新手,我在eclipse中編程。「本地變量SoundButton38的值未使用」但我想要使用它?

我正在創建一個簡單的音板,但我收到警告「本地變量SoundButton38的值未使用」,但我想使用該變量。

SoundButton1-37正在工作,沒有錯誤,但38-63確實有警告。我不確定是什麼原因造成的,以及它發生的原因。

這裏是我的代碼片段,其中警告快到了(35,36和37沒有警告:

  Button SoundButton35 = (Button)findViewById(R.id.sound35); 
      SoundButton35.setOnClickListener(new OnClickListener() { 

     public void onClick(View v) { 
      mSoundManager.playSound(35); 

     } 
    }); 
      Button SoundButton36 = (Button)findViewById(R.id.sound36); 
      SoundButton36.setOnClickListener(new OnClickListener() { 

     public void onClick(View v) { 
      mSoundManager.playSound(36); 

     } 
      }); 

      Button SoundButton37 = (Button)findViewById(R.id.sound37); 
      SoundButton35.setOnClickListener(new OnClickListener() { 

     public void onClick(View v) { 
      mSoundManager.playSound(37); 

     } 
    }); 

      Button SoundButton38 = (Button)findViewById(R.id.sound38); 
      SoundButton35.setOnClickListener(new OnClickListener() { 

     public void onClick(View v) { 
      mSoundManager.playSound(38); 

     } 
    }); 

這裏是我的代碼開始

package com.soundboardtest; 

import com.soundboardtest.R; 
import com.soundboardtest.SoundManager; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 

public class Soundboard extends Activity { 
    private SoundManager mSoundManager; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_soundboardtest); 

    mSoundManager = new SoundManager(); 
    mSoundManager.initSounds(getBaseContext()); 
    mSoundManager.addSound(1, R.raw.sound1); 
    mSoundManager.addSound(2, R.raw.sound2); 
    mSoundManager.addSound(3, R.raw.sound3); 
    mSoundManager.addSound(4, R.raw.sound4); 
    mSoundManager.addSound(5, R.raw.sound5); 
    mSoundManager.addSound(6, R.raw.sound6); 
    mSoundManager.addSound(7, R.raw.sound7); 
    mSoundManager.addSound(8, R.raw.sound8); 
    mSoundManager.addSound(9, R.raw.sound9); 
    mSoundManager.addSound(10, R.raw.sound10); 
    mSoundManager.addSound(11, R.raw.sound11); 
    mSoundManager.addSound(12, R.raw.sound12); 
    mSoundManager.addSound(13, R.raw.sound13); 
    mSoundManager.addSound(14, R.raw.sound14); 
    mSoundManager.addSound(15, R.raw.sound15); 
    mSoundManager.addSound(16, R.raw.sound16); 
    mSoundManager.addSound(17, R.raw.sound17); 
    mSoundManager.addSound(18, R.raw.sound18); 
    mSoundManager.addSound(19, R.raw.sound19); 
    mSoundManager.addSound(20, R.raw.sound20); 
    mSoundManager.addSound(21, R.raw.sound21); 
    mSoundManager.addSound(22, R.raw.sound22); 
    mSoundManager.addSound(23, R.raw.sound23); 
    mSoundManager.addSound(24, R.raw.sound24); 
    mSoundManager.addSound(25, R.raw.sound25); 
    mSoundManager.addSound(26, R.raw.sound26); 
    mSoundManager.addSound(27, R.raw.sound27); 
    mSoundManager.addSound(28, R.raw.sound28); 
    mSoundManager.addSound(29, R.raw.sound29); 
    mSoundManager.addSound(30, R.raw.sound30); 
    mSoundManager.addSound(31, R.raw.sound31); 
    mSoundManager.addSound(32, R.raw.sound32); 
    mSoundManager.addSound(33, R.raw.sound33); 
    mSoundManager.addSound(34, R.raw.sound34); 
    mSoundManager.addSound(35, R.raw.sound35); 
    mSoundManager.addSound(36, R.raw.sound36); 
    mSoundManager.addSound(37, R.raw.sound37); 
    mSoundManager.addSound(38, R.raw.sound38); 
    mSoundManager.addSound(39, R.raw.sound39); 
    mSoundManager.addSound(40, R.raw.sound40); 
    mSoundManager.addSound(41, R.raw.sound41); 
    mSoundManager.addSound(42, R.raw.sound42); 
    mSoundManager.addSound(43, R.raw.sound43); 
    mSoundManager.addSound(44, R.raw.sound44); 
    mSoundManager.addSound(45, R.raw.sound45); 
    mSoundManager.addSound(46, R.raw.sound46); 
    mSoundManager.addSound(47, R.raw.sound47); 
    mSoundManager.addSound(48, R.raw.sound48); 
    mSoundManager.addSound(49, R.raw.sound49); 
    mSoundManager.addSound(50, R.raw.sound50); 
    mSoundManager.addSound(51, R.raw.sound51); 
    mSoundManager.addSound(52, R.raw.sound52); 
    mSoundManager.addSound(53, R.raw.sound53); 
    mSoundManager.addSound(54, R.raw.sound54); 
    mSoundManager.addSound(55, R.raw.sound55); 
    mSoundManager.addSound(56, R.raw.sound56); 
    mSoundManager.addSound(57, R.raw.sound57); 
    mSoundManager.addSound(58, R.raw.sound58); 
    mSoundManager.addSound(59, R.raw.sound59); 
    mSoundManager.addSound(60, R.raw.sound60); 
    mSoundManager.addSound(61, R.raw.sound61); 
    mSoundManager.addSound(62, R.raw.sound62); 
    mSoundManager.addSound(63, R.raw.sound63); 

感謝您的幫助,我無法找到一個好的答案。

+0

你有64次爲一按鈕,相同的代碼?請了解DRY原理。 http://en.wikipedia.org/wiki/Don't_repeat_yourself – Bananeweizen

回答

0

您只聲明並初始化它沒有使用它任何地方

Button SoundButton38 = (Button)findViewById(R.id.sound38); 

你可能想

SoundButton38.setOnClickListener(new OnClickListener() { // SoundButton38 not 35 

    public void onClick(View v) { 
     mSoundManager.playSound(38); 

    } 
}); 

同樣

SoundButton37.setOnClickListener(new OnClickListener() { 

    public void onClick(View v) { 
     mSoundManager.playSound(37); 

    } 
}); 
+0

「SoundButton 38無法解決」是我得到的錯誤,如果我使用您的代碼。 爲什麼前37個工作,但後來38個沒有? – user3121598

+0

@ user3121598顯示更新後的代碼 – Raghunandan

+0

噢,我的天哪我輸入錯了,現在已修復。我會給你最好的答案,一旦它允許它 – user3121598

1
Button SoundButton38 = (Button)findViewById(R.id.sound38); 
      SoundButton35.setOnClickListener(new OnClickListener() { 

看起來像一個錯字這裏,我想它應該是

SoundButton38.setOnClickListener(new OnClickListener() { 

Similiarly

Button SoundButton37 = (Button)findViewById(R.id.sound37); 
      SoundButton35.setOnClickListener(new OnClickListener() { 

應該已經

SoundButton37.setOnClickListener(new OnClickListener() { 
+0

我想知道爲什麼#37 wasnt這個警告...... ??? ..同樣的問題,以及.. – TheLostMind

+0

這個作品,但是是第二個評論 – user3121598

相關問題