2012-12-08 33 views
0

我有一個隨機生成的整數顯示在屏幕上,當用戶單擊按鈕時,我希望該數字用新數字更新或保持不變(取決於哪個按鈕),但保持相同的活動。Android:開啓按鈕單擊,維護或更改同一活動中的值

如何在保持相同活動的同時刷新/更新值?

public class ClassName extends Activity implements OnClickListener { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_name); 
     int currentNum = randNum(); 
     TextView myTextView = (TextView) findViewById(R.id.current_number); 
     myTextView.setText("Current Number: " + String.valueOf(currentNum)); 
     okButton = (Button) findViewById(R.id.num_confirmation); 
     okButton.setOnClickListener(this); 
     changeButton = (Button) findViewById(R.id.change_num); 
     changeButton.setOnClickListener(this); 
     // set 'currentNumber' accordingly 
     // reprint value 
    } 

    @Override 
    public void onClick(View v) { 

    } 

一個我想要做的事情是保持相同的值時,單擊一個按鈕(即currentNum保持不變)。另一件事是用我返回一個新數字的方法(即currentNumber = methodCall();)改變數值(用不同的按鈕點擊)。

這是如何完成的?

回答

1

只是這樣做

@Override 
public void onClick(View v) { 
    switch (v.getId()) { 
    case R.id.num_confirmation: 
     //do nothing in your current scenario 
     break; 
    case R.id.change_num: 
     myTextView.setText("Current Number: " + String.valueOf(currentNum+5)); 
     break; 


    default: 
     break; 
    } 
+0

謝謝。代碼繼續從我的按鈕語句正確之後的onCreate執行? –

+0

是的。這是'回電'。每當按鈕點擊它將會觸發。 –

0

您既可以使用開關的情況下找到了ID,並添加代碼在那裏。 或者在該活動的佈局xml文件,在按鈕你想要寫一個的onClick方法

對於按鈕1

android:onClick="newNum" 

對於按鈕2

android:onClick="doNothing" 

然後,添加這些方法,到您的活動類別

public void newNum(View v) { 
    myTextView.setText("Current Number: " + String.valueOf(currentNum+5)); 
} 

public void doNothing(View v) { 
    // Do nothing here 
}