2012-11-14 41 views
0

我想禁用按鈕B按鈕A.可變能見度setOnClickListener

public class GoJump extends Activity{ 
    Button answerA, answerB; 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.jump); 
answerA = (Button) findViewById(R.id.button_A); 
answerB = (Button) findViewById(R.id.button_B); 

    answerA.setOnClickListener(new OnClickListener() 
    { 
       public void onClick(View v) 
        { 
        // Do something 
        // Disable button B 
        } 
    }); 

問題作出treatement當按鈕B是不可見的內部按鈕A treatement。我必須另外聲明一次禁用它。 有沒有其他方法可以做?在所有課程中都使變量可見。 謝謝。

+1

將它作爲實例和最終變量而不是局部變量。更多的代碼會有幫助。 – kosa

+0

@Nambari:我只想在按下按鈕A時禁用按鈕B.只是它;)。請任何代碼? – androniennn

+0

沒有看到你的代碼(你如何聲明Button B),很難舉一個例子。請提供更多代碼。 – kosa

回答

1

在onCreate()之前初始化你的變量。

// Before onCreate 
private Button b, b2; 

@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    b = (Button) findViewById(R.id.button); 
    b2 = (Button) findViewById(R.id.button2); 

    b.setOnClickListener(new OnClickListener() 
    { 
      public void onClick(View v) 
      { 
       b2.setEnabled(false); 
      } 
    }); 
{ 
+0

是的,現在正在工作);原因:Eclipse!謝謝老兄 :)。 – androniennn

1

你只需要setEnabled爲false。閱讀javadoc

  public void onClick(View v) 
        { 
        answerB.setEnabled(false); 
        } 
+0

b在onClick裏面不可見 – androniennn

+1

對不起!它應該是答案B.更新了答案。 – kosa

+0

Eclipse是個什麼玩笑!它讓我發瘋了!我剛剛重新啓動它,並知道它看到answerB變量!我知道這不合乎邏輯,但必須發佈一個問題以確保。謝謝你; :) – androniennn