0

你能建议我如何管理通过蓝牙从 Arduino 获得的两个值。我正在测量两个传感器,其中一个我添加了数字 10000,所以现在我在终端中获取值,例如 540 10025、540 10024……我在一个传感器上添加了 10000,以便更容易地划分它们。现在我想在不同的 TextView 中显示这两个数字并从一个​​中删除 10000。

这就是我在 TextView 上获取数字的方式

public class ArduinoReceiver extends BroadcastReceiver {    
    @Override
    public void onReceive(Context context, Intent intent) {
        String data = null;     
        final int dataType = intent.getIntExtra(AmarinoIntent.EXTRA_DATA_TYPE, -1);

        if (dataType == AmarinoIntent.STRING_EXTRA){
            data = intent.getStringExtra(AmarinoIntent.EXTRA_DATA);         
            if (data != null){
            mValueTV.setText(data + "°");
                alarm();
            }
....
4

1 回答 1

1

如果我理解正确,您将通过同一个广播接收器接收两种不同类型的整数——一种低于 10,000,另一种高于。并且您想在两个不同的 TextView 中显示它们。代码应该看起来像

data = intent.getStringExtra(AmarinoIntent.EXTRA_DATA);
if (data != null)
{
    int value = Integer.parseInt(data);
    if (value >= 10000)
    {
        // put in one text view after substracting 10,000
        firstTextView.setText(Interger.toString(value - 10000) + "°");
    }
    else
    {
        // put in the second TextView
        secondTextView.setText(data + "°");
    }
}
于 2013-08-15T18:27:41.397 回答