gpt4 book ai didi

android - 在 Android 中读取大型列表以获取 AutoCompleteTextView

转载 作者:行者123 更新时间:2023-11-30 03:26:01 25 4
gpt4 key购买 nike

我有一个 72000 行和 2,6M 大小的文件。在此文件中是 AutoCompleteTextView 的所有字符串项。目前我是这样读的:

List<IcdObject> codes = new ArrayList<IcdObject>();
try {
InputStream input = getAssets().open("icd.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(input));

String line;
while ((line = br.readLine()) != null) {
String[] icd = line.split("|");
codes.add(new IcdObject(icd[0], icd[1]));
}

input.close();
} catch (IOException e) {
// TODO
e.printStackTrace();
}
ArrayAdapter<IcdObject> adapter = new ArrayAdapter<IcdObject>(this,
android.R.layout.select_dialog_item, codes);
AutoCompleteTextView at = (AutoCompleteTextView) findViewById(R.id.AutoComplete);
at.setThreshold(3);
at.setAdapter(adapter);

当我开始 Activity 时,垃圾收集器变得疯狂。但最后,在等待大约 1 分钟后,所有项目都会加载。有没有一种方法可以按需加载文件或使其更快?

最佳答案

您可以使用 Loaders API 来执行这些大型数据集读取。LoaderManager.LoaderCallbacks类用于从 LoaderManager 获取回调

关于android - 在 Android 中读取大型列表以获取 AutoCompleteTextView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18240519/

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