2015-10-18 189 views
0

嗨我想在android中的TextView中顯示計算器的表達式作爲文本。一旦按鈕被點擊,每個按下的數字都需要在textView中顯示。例如,將特殊字符轉換爲字符串

如果按鈕1,2,3被按下123需要顯示。當按下123 + 23時,需要按照原樣顯示。

所以我編碼它是這樣的。

公共類MainActivity延伸AppCompatActivity {

 String value=""; 

     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main); 

     } 

     public void buttonOnClick(View view){ 

      Button b = (Button)view; 
      String buttonText = b.getText().toString(); 
      value=value+buttonText; 

      TextView myTextView=(TextView)findViewById(R.id.textView); 
      myTextView.setText(value); 

     } 
    } 

但當charachers像*,/,+被輸入雖然將要顯示像需要二百五十零分之一百二十三的表達,因爲它是作爲一個字符串它顯示在textView看起來像250/123。我在邏輯中犯了什麼錯誤。請請人幫忙。爲什麼「/」來自123的盈方。

回答

0

可能你必須首先解析你的buttonText以確定它是否是數字或其他。 如果它是一個數字,像平常一樣連接 else,在連接期間在buttonText的前面和後面添加額外的空間

+0

嗨....請給我解釋一下背後的邏輯。 – user3789200

+0

Hi @ user3789200,我試過你的代碼,它似乎在實際工作。 –

相關問題