Android 台灣中文網

標題: 請問如何做出A輸入框輸入數值後跳至B輸入框自動算出數值 [打印本頁]

作者: jr1230    時間: 2014-7-3 13:34
標題: 請問如何做出A輸入框輸入數值後跳至B輸入框自動算出數值
請問各位高手請指導小第
如果在A輸入框輸入數值後跳至B輸入框時會自動計算數值顯是在B輸入框
或者在B輸入框輸入數值跳至A輸入框時會自動計算數值在A輸入框中

例如
A輸入框輸入100
當跳至B輸入框時自動將A輸入的數值除以100
B輸入框顯示為1

B輸入框輸入100
當跳至A輸入框時自動將B輸入的數值除以100
A輸入框顯示為1
作者: whl    時間: 2014-7-4 09:16
用 onclicklistener 不就好了嗎?
作者: CarolHsieh    時間: 2014-7-4 11:08
雖然不明白這樣的用意是什麼...

B輸入框設onclicklistener
if(A有值)
{}
else
{}
以此類推
作者: jr1230    時間: 2014-7-4 21:16
CarolHsieh 發表於 2014-7-4 11:08
雖然不明白這樣的用意是什麼...

B輸入框設onclicklistener

謝謝您的指導
因小弟是新手
可以打個範例
讓小弟看一下嗎
謝謝您
作者: CarolHsieh    時間: 2014-7-7 13:50
更正
因為你是用輸入框EditText的話
應該用setOnFocusChangeListener
而不是onclicklistener
請參考下面程式


  1. String x,y;
  2.         EditText a,b;
  3.         int x1,y1;
  4.         @Override
  5.         protected void onCreate(Bundle savedInstanceState) {
  6.                 super.onCreate(savedInstanceState);
  7.                 setContentView(R.layout.activity_main);
  8.                 a=(EditText)findViewById(R.id.editText1);
  9.                 b=(EditText)findViewById(R.id.editText2);
  10.                 if(a!=null&&b!=null){
  11.                 a.setOnFocusChangeListener(new View.OnFocusChangeListener() {
  12.                     @Override
  13.                     public void onFocusChange(View v, boolean hasFocus) {
  14.                         if(hasFocus) {
  15.                     x=b.getText().toString();
  16.                     if(!x.equals("")){
  17.                             x1=Integer.valueOf(x);
  18.                             y1=x1/x1;
  19.                             a.setText(String.valueOf(y1));
  20.                     }
  21.                         }
  22.             }
  23.         });
  24.                 b.setOnFocusChangeListener(new View.OnFocusChangeListener() {
  25.                     @Override
  26.                     public void onFocusChange(View v, boolean hasFocus) {
  27.                         if(hasFocus) {
  28.                     x=a.getText().toString();
  29.                     if(!x.equals("")){
  30.                             x1=Integer.valueOf(x);
  31.                             y1=x1/x1;
  32.                             b.setText(String.valueOf(y1));
  33.                     }
  34.             }
  35.                     }
  36.         });
  37.                 }
  38.         }
複製代碼





歡迎光臨 Android 台灣中文網 (https://apk.tw/) Powered by Discuz! X3.1