【发布时间】:2021-04-18 13:01:29
【问题描述】:
最近我遇到了一个错误,尽管我的 gradle 和 import 中有所需的一切,但我无法解决。我尝试重新启动应用程序,重新运行它并更改导入,但没有任何改变。 Android Studio 无法解析符号“视图”,与变量有关。也许是我错过的东西。我不知道。
以下是我认为需要的导入:
import android.view.View;
import android.view.ViewGroup;
我得到错误的代码:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_running, container, false);
//Initialize views
stepText = (TextView) view.findViewById(R.id.stepText);
timeText = (TextView) view.findViewById(R.id.timeText);
speedText = (TextView) view.findViewById(R.id.speedText);
distanceText = (TextView) view.findViewById(R.id.distanceText);
orientationText = (TextView) view.findViewById(R.id.orientationText);
achievedText = (TextView) view.findViewById(R.id.achievedText);
setViewDefaultValues();
//Step counting and other calculations start when user presses "start" button
final Button startButton = (Button) view.findViewById(R.id.startButton);
if (startButton != null) {
startButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!active) {
startButton.setText(R.string.pause);
startButton.setBackgroundColor(ContextCompat.getColor(getActivity(), R.color.gray2));
sensorManager.registerListener(RunningFragment.this, stepDetectorSensor, SensorManager.SENSOR_DELAY_NORMAL);
sensorManager.registerListener(RunningFragment.this, accelerometer, SensorManager.SENSOR_DELAY_NORMAL);
sensorManager.registerListener(RunningFragment.this, magnetometer, SensorManager.SENSOR_DELAY_NORMAL);
startTime = SystemClock.uptimeMillis();
handler.postDelayed(timerRunnable, 0);
active = true;
} else {
startButton.setText(R.string.start);
startButton.setBackgroundColor(ContextCompat.getColor(getActivity(), R.color.gray2));
sensorManager.unregisterListener(RunningFragment.this, stepDetectorSensor);
sensorManager.unregisterListener(RunningFragment.this, accelerometer);
sensorManager.unregisterListener(RunningFragment.this, magnetometer);
elapsedTime += timeInMilliseconds;
handler.removeCallbacks(timerRunnable);
active = false;
}
}
});
}
//Reset all calculations to 0
Button resetButton = (Button) view.findViewById(R.id.resetButton);
resetButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
stepCount = 0;
distance = 0;
elapsedTime = 0;
setViewDefaultValues();
}
});
//Opens SettingsActivity where user can set the step record of the day
Button settingsButton = (Button) view.findViewById(R.id.settingsButton);
settingsButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(getActivity(), SettingsActivity.class);
startActivity(intent);
}
});
return view;
}
一些截图:
【问题讨论】: