어디에서나 보았지만 찾고있는 것을 찾을 수 없습니다.setOnClickListener의 변수를 확인할 수 없습니다.
Fragment
안에 Chronometer
을 사용하여 Android 용 스톱워치 앱을 만들려고 시도 중이지만 일부 버튼의 경우 setOnClickListener
에서 오류가 발생합니다.
괄호 "()"안에있는 변수입니다. (mStartListener
), 오류 mStartListener cannot be resolved to a variable
가 표시됩니다.
도와주세요, 정말 안드로이드 개발에 들어가고 싶습니다. 당신에게
감사하는 것은 여기에 코드를입니다
b = (Button) getView().findViewById(R.id.start);
b.setOnClickListener(mStartListener); //--- error
b = (Button) getView().findViewById(R.id.stop);
b.setOnClickListener(mStopListener); //--- error
b = (Button) getView().findViewById(R.id.reset);
b.setOnClickListener(mResetListener); //--- error
전체 코드 : 당신은 클래스 변수로 각 리스너를 선언
import android.app.Fragment;
import android.os.Bundle;
import android.os.SystemClock;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Chronometer;
public class StopWatchFragment extends Fragment {
Chronometer mChronometer;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.stopwatch, container, false);
Button b;
mChronometer = (Chronometer) getView().findViewById(R.id.chronometer);
// Watch for button clicks.
b = (Button) getView().findViewById(R.id.start);
b.setOnClickListener(mStartListener); //--- error
b = (Button) getView().findViewById(R.id.stop);
b.setOnClickListener(mStopListener); //--- error
b = (Button) getView().findViewById(R.id.reset);
b.setOnClickListener(mResetListener); //--- error
return view;
View.OnClickListener mStartListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.start();
}
};
View.OnClickListener mStopListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.stop();
}
};
View.OnClickListener mResetListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.setBase(SystemClock.elapsedRealtime());
}
};
}
}
정말 고마워요! 그것은 효과가 있었고, 오류는 없었지만 이제는 조각을 실행하면 Force가 닫힙니다. – Jakob
반갑습니다. LogCat 오류가 포함 된 새로운 질문을 게시 할 수없는 경우 Force Close 문제를 해결하기 위해 최선을 다하십시오. – Sam
다시 감사합니다. 정말로 도움을 주셔서 감사합니다. – Jakob