Вы можете добавить перевод строки и табуляцию в свой метод onKey, а затем вернуть true, чтобы указать, что событие было использовано для предотвращения последующей обработки исходного перевода строки.
public boolean onKey (final View view, final int i, final KeyEvent keyEvent) {
Editable editableText = ((EditText)view).getText();
if (shouldAppendTab(editableText)) {
editableText.append('\n');
editableText.append('\t');
return true;
}
return false;
}
Замените shouldAppendTab (editableText) на ваш код, чтобы определить, хотите ли вы добавить вкладку.