我在一些能够编辑文本文件的应用程序上工作。但是我对EditText存在严重问题。目前我加载大小为17KB的文本文件。我不认为,17KB是可怕的文本量。滚动很好,但是当我关注EditText并开始编辑时,它会延迟/冻结4-5秒。当我离开EditText时也会发生同样的事情。我正在使用API级别8.这是我的edittext布局:
<EditText android:id="@+id/journal_text"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:gravity="top|left"
android:layout_weight="1"
android:lines="20"
android:inputType="textMultiLine|textNoSuggestions"
android:scrollbars="vertical"
android:fadeScrollbars="false"
>
<requestFocus />
</EditText>
这是我的java代码:
edit = (EditText)view.findViewById(R.id.journal_text);
edit.setText(readFile(path));
这就是全部
来自GooglePlay我已经下载了应用程序Jota文本编辑器,它可以很好地处理大型文本数据......任何人都可以帮助我或指导我如何解决这个问题? 谢谢 安东
答案 0 :(得分:0)
自定义EditText无法解决问题。当EditText中的文本内容变得太大时,EditText中的编辑将变得更慢。尝试使用WebView而不是EditText。它也适用于非常大的文本内容。
答案 1 :(得分:0)
你必须使用扫描仪来阅读文本文件。
StringBuilder stringBuilder = new StringBuilder();
Scanner scanner = new Scanner(tempFile).useDelimiter("\\Z");
while (scanner.hasNext()) {
stringBuilder .append(scanner.next());
}
edit.setText(stringBuilder );