public void onSensorChanged(SensorEvent event) {
float azimuth = event.values[0];
textViewX.setText("Sensor Irány :" + azimuth);
如何将“方位角”转换为变量?我无法使我的FileWriter代码将此数据写入文件。它不能解决方位角的问题。
fw = new FileWriter(Environment.getExternalStorageDirectory() + "/DataLog.csv",
true);
BufferedWriter br = new BufferedWriter(fw);
br.append(azimuth);
br.append("\r\n");
br.close();
fw.close();
如果我为这个代码写方位角以便FileWriter将其写入文件,我得到了这个错误:“方位角无法解析为变量”
答案 0 :(得分:0)
您的方位角变量似乎超出了您尝试使用它的范围。它在onSensorChanged()中定义,而你试图从onLocationChanged()访问它。变量只能在定义后定义的代码块(由花括号括起的代码行)中访问。因此,您无法从不同函数体内访问一个函数中定义的变量。
为了在onLocationChanged()中使用azimuth的值,你需要在那里重新定义它,或者(在onSensorChanged()中)将它的值赋给onLocationChanged()然后能够访问的全局变量。
请查看wiki on scope以获取有关范围的更多信息。