0

私はIDEを作成しており、TextViewを使用して、EditTextの行数に基づいて行番号を表示しています。新しい行を追加して作業していますが、行が削除されたかどうかを確認して 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;
}

});

4

1 に答える 1

0

これでうまくいきました。

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;
            }
        });
于 2013-04-04T23:49:57.720 に答える