Android:如何将光标向下移动到多行Edittext中的下一行?

时间:2012-06-20 12:54:46

标签: android android-edittext

我有一个要求,我必须实现按钮,可以在多行Edittext中上下移动光标。

我浏览了开发者网站,发现了选择课http://developer.android.com/reference/android/text/Selection.html 可以使用,但我无法使用它..

请帮帮我..

谢谢。

3 个答案:

答案 0 :(得分:1)

我不确定这段代码,但它可能会帮助你......

只需浏览以下网址中的代码即可。我可以帮你找出解决方案。

http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.0.3_r1/android/text/Selection.java

答案 1 :(得分:1)

来源:http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.0.3_r1/android/text/Selection.java

我复制了代码并在下面进行了一些修改,然后将其附加到我的班级。


public boolean moveDown(Layout layout) {
        int start = myTextbox.getSelectionStart();
        int end = myTextbox.getSelectionEnd();

        if (start != end) {
            int min = Math.min(start, end);
            int max = Math.max(start, end);

            myTextbox.setSelection(max);

            if (min == 0 && max == myTextbox.length()) {
                return false;
            }

            return true;
        } else {
            int line = layout.getLineForOffset(end);

            if (line < layout.getLineCount() - 1) {
                int move;

                if (layout.getParagraphDirection(line) ==
                    layout.getParagraphDirection(line + 1)) {
                    float h = layout.getPrimaryHorizontal(end);
                    move = layout.getOffsetForHorizontal(line + 1, h);
                } else {
                    move = layout.getLineStart(line + 1);
                }

                myTextbox.setSelection(move);
                return true;
            }
        }

        return false;
    }

我希望这会有用。

如果有人知道如何使用真实方法而不重新创建它,请分享:D

答案 2 :(得分:0)

尝试:

editText.append(&#34; \ n&#34);

它会将光标移动到下一行。