2013-04-16 31 views
0

我有6對編輯文本,並非所有編輯文本都必須編輯,但至少必須編輯一對。 我想要做的是將空的零設置爲零,所以數學運算出來,但沒有0顯示在編輯文本中,所以用戶不會不得不保持刪除零將值設置爲空的編輯文本

我得到了什麼此刻並不理想

if (width1.getText().toString().equals("") 
      || height1.getText().toString().equals("") 
      || width2.getText().toString().equals("") 
      || height2.getText().toString().equals("") 
      || width3.getText().toString().equals("") 
      || height3.getText().toString().equals("") 
      || width4.getText().toString().equals("") 
      || height4.getText().toString().equals("") 
      || width5.getText().toString().equals("") 
      || height5.getText().toString().equals("") 
      || width6.getText().toString().equals("") 
      || height6.getText().toString().equals("")) { 
     width1.setText("0"); 
     width2.setText("0"); 
     width3.setText("0"); 
     width4.setText("0"); 
     width5.setText("0"); 
     width6.setText("0"); 
     height1.setText("0"); 
     height2.setText("0"); 
     height3.setText("0"); 
     height4.setText("0"); 
     height5.setText("0"); 
     height6.setText("0"); 
    } 

    calc.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 
      if (width1.getText().toString().equals("0") 
        || height1.getText().toString().equals("0")) { 
       Toast msg = Toast.makeText(getBaseContext(), 
         "Please enter measurements", Toast.LENGTH_LONG); 
       msg.show(); 
      } 

      else { 

       Intent sender = getIntent(); 
       int result100 = sender.getExtras().getInt("Result100"); 
       int result215 = sender.getExtras().getInt("Result215"); 
       int result325 = sender.getExtras().getInt("Result315"); 

       a = Double.parseDouble(width1.getText().toString()); 
       b = Double.parseDouble(height1.getText().toString()); 
       c = Double.parseDouble(width2.getText().toString()); 
       d = Double.parseDouble(height2.getText().toString()); 
       e = Double.parseDouble(width3.getText().toString()); 
       f = Double.parseDouble(height3.getText().toString()); 
       u = Double.parseDouble(width4.getText().toString()); 
       v = Double.parseDouble(height4.getText().toString()); 
       w = Double.parseDouble(width5.getText().toString()); 
       x = Double.parseDouble(height5.getText().toString()); 
       y = Double.parseDouble(width6.getText().toString()); 
       z = Double.parseDouble(height6.getText().toString()); 

       if (getIntent().hasExtra("Result100")) { 
        total = (result100) - (a * b) + (c * d) + (e * f) 
          + (u * v) + (w * x) + (y * z) * 60; 
       } else if (getIntent().hasExtra("Result215")) { 
        total = (result215) - (a * b) + (c * d) + (e * f) 
          + (u * v) + (w * x) + (y * z) * 120; 
       } else if (getIntent().hasExtra("Result315")) { 
        total = (result325) - (a * b) + (c * d) + (e * f) 
          + (u * v) + (w * x) + (y * z) * 180; 

       } 
       Intent intent = new Intent(MinusOpes.this, 
         Wl2Amounts.class); 
       intent.putExtra("Result", total); 
       startActivity(intent); 
      } 
+0

而不是設置來設置它空 –

+0

一旦你告訴的「空殼零」了你告訴「沒有編輯文本中顯示的0」非常conf使用 – stinepike

+0

嘗試edittext.setHint(stringResourceId) – Naveen

回答

2

而不是設置每場爲0,您可以:

if (TextUtils.isEmpty(width1.getText().toString())) { 
    a = 0; 
} else { 
    a = Double.parseDouble(width1.getText().toString()); 
} 
+0

謝謝,現在就試試這個 – Robert

+0

這工作完美,再次感謝 – Robert

+0

不客氣:) – Aballano

相關問題