[英]How can you check if a line or lines have been removed from a TextView?
I am making an ide and use a TextView to display line numbers based on my EditText's line count. 我正在做一个想法,并使用TextView根据我的EditText的行数显示行号。 I have it working with adding new lines but how can I check to see if a line has been deleted and decrease the TextView's line count? 我可以使用它来添加新行,但是如何检查行是否已删除并减少TextView的行数呢?
et.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(keyCode == KeyEvent.KEYCODE_ENTER)) {
lines++;
lineNumbers.append(lines+"\n");
}
return false;
}
}); });
This did the job. 这完成了工作。
private void openFile(final File aFile) {
String nullChk = et.getText().toString();
exists = true;
if (!changed || nullChk.matches("")) {
try {
currentFile = aFile;
et.setText(new Scanner(currentFile).useDelimiter("\\Z").next());
lineNumbers.setText("");
lines = 1;
for (int i = 1; i < et.getLineCount(); i++) {
lineNumbers.append(lines + "\n");
lines++;
...
}
et.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if ((event.getAction() == KeyEvent.ACTION_DOWN)
&& (keyCode == KeyEvent.KEYCODE_ENTER)) {
lines++;
lineNumbers.append(lines + "\n");
}
if ((event.getAction() == KeyEvent.ACTION_DOWN)
&& (keyCode == KeyEvent.KEYCODE_DEL)) {
lineNumbers.setText("");
lines = 0;
for (int i = 1; i < et.getLineCount(); i++) {
lines++;
lineNumbers.append(lines + "\n");
}
}
return false;
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.