2015-04-08 4 views
-2

Я хочу сделать приложение, в котором у меня есть 2 кнопки и 1 редактор. Кнопки + и -. Когда я нажимаю кнопку «+», я должен получить счетчик ++ в редакторе, и когда я нажимаю кнопку «-», счетчик - бывает и записывает его в текстовом редакторе. Теперь, когда я нажимаю на счетчик, когда номер по умолчанию в текстовом редакторе равен 0, он выглядит как -1, -2, -3 и т. Д. Но я не хочу принимать число меньше 0. Затем, что нужно добавить к следующему коду.Counter ++ и Counter-- пример в android

Код.

public class MainActivity extends Activity implements OnClickListener 
{ 
    int counter=0; 
    EditText et1; 
    Button btnminus,btnplus; 
    protected void onCreate(Bundle savedInstanceState) 
    { 
     // TODO Auto-generated method stub 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     et1 = (EditText) findViewById(R.id.et_number); 
     btnminus = (Button) findViewById(R.id.btn_minus); 
     btnplus = (Button) findViewById(R.id.btn_plus); 

     btnminus.setOnClickListener(this); 
     btnplus.setOnClickListener(this); 
    } 

    public void onClick(View v) 
    { 
     if(v == btnminus) 
     { 
      counter--; 
      et1.setText(Integer.toString(counter)); 
     } 

     if(v == btnplus) 
     { 
      counter++; 
      et1.setText(Integer.toString(counter)); 
     } 
    } 
} 

ответ

0
if(v == btnminus && counter!=0) 
    { 
     counter--; 
     et1.setText(Integer.toString(counter)); 
    } 
+0

Thanx много ... !!! Sai Phani –

0
protected void onCreate(Bundle savedInstanceState) 
{ 
    // TODO Auto-generated method stub 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    et1 = (EditText) findViewById(R.id.et_number); 
    btnminus = (Button) findViewById(R.id.btn_minus); 
    btnplus = (Button) findViewById(R.id.btn_plus); 

    et1.setText(Integer.toString(counter)); 
    btnminus.setOnClickListener(this); 
    btnplus.setOnClickListener(this); 
}  

public void onClick(View v) 
{ 
    if(v == btnminus) 
    { 
     int check=Integer.valueOf(et1.getText().toString); 
     if(check!=0){    
     counter--; 
     et1.setText(Integer.toString(counter)); 
     } 
    } 

    if(v == btnplus) 
    { 
     counter++; 
     et1.setText(Integer.toString(counter)); 
    } 
} 
+0

Thanx много !! его просто, но я didntnizeded это thanx тонну !! –

+0

Нет проблем, вы можете установить первый 0 текст в onCreate() как обновленный код. Если это работает, примите ответ) –

+0

@MitakshShah ... –

0
if(v == btnminus && counter>0) // if counter at least ==1 it could be decremented 
    et1.setText(String.valueOf(--counter)); //prefix decrement 

else if(v == btnplus) // else if wont be checked if v == btnminus but counter is 0 
    et1.setText(String.valueOf(++counter)); // prefix inscrement 
+0

Как правило, ответы гораздо полезнее, если они содержат объяснение того, что должен делать код, и почему это решает проблему, не представляя других. (Это сообщение было помечено как минимум одним пользователем, по-видимому, потому, что они считали, что ответ без объяснений должен быть удален.) –

+0

Да, принятый ответ имеет «много расширений», конечно. – Stan