gpt4 book ai didi

android - 文字选择取决于手机

转载 作者:行者123 更新时间:2023-12-04 10:35:46 29 4
gpt4 key购买 nike

在我的应用程序中,我有一个 EditText,用户可以在其中选择文本的一部分。问题是选择行为因手机而异:使用一个,用户可以正常选择,但使用另一个,用户必须点击文本指示器,然后点击“全选”。

如何将第一个行为设置为默认行为?为什么手机之间的行为不同?

感谢您的回答,祝您有美好的一天!

编辑:

现在我用这个方法选择包含光标的单词:

fun EditText.selectCurrentWord() {
val textSpan = text
val selection = selectionStart
val pattern = Pattern.compile("\\w+")
val matcher = pattern.matcher(textSpan)
var start: Int
var end: Int

while (matcher.find()) {
start = matcher.start()
end = matcher.end()

if (selection in start..end) {
setSelection(start, end)
break
}
}
}

但是现在的问题是选择开始和结束处的光标没有出现......

EditText 是可选的和 isCursorVisible设置为真。

最佳答案

您可以尝试使用 Button选择文本使用

EditText myET = findViewById(R.id.myET);
Button selectBtn = findViewById(R.id.selectBtn);

selectBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
myET.setSelectAllOnFocus(true);
myET.selectAll();
}
});

您可以打开 context menu使用
openContextMenu(myET);
您还可以获取光标的起点和终点位置
myET.getSelectionStart();
myET.getSelectionEnd();
引用答案
  • Getting cursor position
  • Select Text programmatically

  • 更新 1
    在你的按钮点击中添加这个,这似乎有效,但有时你必须点击 2 次你可以调整它
    myET.performLongClick();
    myET.setSelection(0, myET.length());
    希望这会有所帮助!

    关于android - 文字选择取决于手机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60192891/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com