0
단일 탭으로 값을 1 씩 올리거나 내릴 버튼 집합을 만들고 버튼을 눌러 값을 빠르게 변경하려고합니다. 나는 값을 빨리 바꾸는 방법을 알 수 없다. 다음은 내가 가지고있는 것입니다.onLongClickListener를 사용하여 값을 빠르게 변경하십시오.
btPlus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mTempo=mTempo+1;
setTempo(mTempo + 1);
tvTempo.setText(Integer.toString(mTempo));
}
});
btPlus.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public void onLongClick(View view) {
mTempo = mTempo + 1;
setTempo(mTempo + 1);
tvTempo.setText(Integer.toString(mTempo));
}
});
btMinus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mTempo=mTempo-1;
setTempo(mTempo - 1);
tvTempo.setText(Integer.toString(mTempo));
}
});
btMinus.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public void onLongClick(View view) {
mTempo = mTempo - 1;
setTempo(mTempo - 1);
tvTempo.setText(Integer.toString(mTempo));
}
});
return rootView;
}
도움 주셔서 감사합니다.
내가 onTouchListener를 사용하여 이해할 수있다,하지만 난 여전히 버튼을 누르고있는 동안은 지속적으로 계산 얻는 방법과 사투를 벌인거야 : 그런, 스레드에서 뭔가를 계산하십시오. 어떤 추가 생각? –
DOWN에서 새 스레드를 시작하고 시작할 수 있습니다. UP을하면 방해가됩니다. 쓰레드가 잠시 멈추지 않는다면 mTempo 루프를 반복하십시오 – Tobi
조금 더 많은 도움을주는 마음입니까? 그것은 t가 내부 클래스로부터 액세스되었고 첫 번째 경우에 최종 선언되어야하고 두 번째 경우에 초기화되지 않았을 수 있다고합니다. –