내 EditText를 작성하거나 효과를 적용하는 동안 실행 취소 및 다시 실행 조작을 적용하려고합니다. 이를 위해 나는이 Link 클래스를 다운로드 한 다음 내 응용 프로그램에서 이것을 사용했습니다. 취소를 들어적용 방법 단추의 EditText에 실행 취소 및 다시 실행을 클릭하십시오. android
TextViewUndoRedo mTextViewUndoRedo = new TextViewUndoRedo(edtNoteDescription);
mTextViewUndoRedo.undo();
다시 실행
TextViewUndoRedo mTextViewUndoRedo = new TextViewUndoRedo(edtNoteDescription);
mTextViewUndoRedo.redo();
하지만이 코드가 작동하지 않는 이유를 모르겠어요, 나는 로그를 넣고 확인했다 여부를 기능 취소 불렀다 또는 불행히도 나는 그것이이 함수를 호출하는 것을 보았으나 메소드 아래에있다.
if (edit == null) {
return;
}
나는 또한 행운과 다른 솔루션을 시도, 그래서이 방법으로 또는 다른 방법으로 동일하게 구현 한 사람은 다음 해 주시기 바랍니다 경우 일부 코드 또는이 기능을 구현하는 방법을 제안했다.
편집 당신이 TextViewUndoRedo
객체에게 버튼을 클릭 할 때마다 생성되는 것을
btnUndo.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
TextViewUndoRedo mTextViewUndoRedo = new TextViewUndoRedo(edtNoteDescription);
mTextViewUndoRedo.undo();
}
});
'Queue' 또는'Stack'을 사용하여 자신의'UNDO/REDO'를 구현할 수 있습니다 ... – nem035
'EditHistory' 안에서'mmPosition'이 0이기 때문에'getPrevious()'메소드는 null을 리턴합니다. 기록이 비어 있습니다. 빈 편집 텍스트에서 실행 취소를 호출 할 수 있습니까? – nem035
@emem, 먼저 답장을 보내 주셔서 감사합니다. 아니요, 빈 편집 상자에서 실행 취소를 적용하고 있지 않습니다. 그리고 다른 것은 작업을 수행 한 후에 왜 EditHistory가 0인지입니다. 나는 그것을 얻지 못합니까? – InnocentKiller