有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在变量Java Android中存储用户EditText中的编号

如何在用户每次输入数字时将edittext中的数字存储在变量(整数)中,并在“onSensorChanged”中使用该变量?如下所示:if(event.values[0]=(1-UserInputVariable)){acceleration.setText(UserInputVariable);}

我的代码是:

Sensor accelerometer;
SensorManager sm;
TextView acceleration;

  EditText mEdit;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    sm=(SensorManager)getSystemService(Context.SENSOR_SERVICE);
    accelerometer=sm.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
    sm.registerListener(this, accelerometer, SensorManager.SENSOR_DELAY_NORMAL);

    acceleration=(TextView)findViewById(R.id.acceleration);


        mEdit   = (EditText)findViewById(R.id.editText1);




}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}


@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
    // TODO Auto-generated method stub

}


@Override
public void onSensorChanged(SensorEvent event) {

     if (event.values[0] == 1)  {
            acceleration.setText(mEdit);

        }

     else{  acceleration.setText("X: "+event.values[0]+
            "\nY:"+event.values[1]);
     }

}

}


共 (1) 个答案

  1. # 1 楼答案

    mEdit.addTextChangedListener(new TextWatcher() {
    
        @Override
        public void afterTextChanged(Editable s) {
            // TODO Auto-generated method stub
    
        }
    
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {
            // TODO Auto-generated method stub
    
        }
    
        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
            doSomething();
    
        } 
    
    });
    

    您可以使用编辑文本更改侦听器处理用户输入的任何内容