gpt4 book ai didi

android - 创建动态 ListPreference (Android)

转载 作者:太空狗 更新时间:2023-10-29 13:34:42 25 4
gpt4 key购买 nike

我想在我的设置中创建一个 ListPreference,其中填充了存储在我的 SQLite 数据库中的不同“年份”。我已经让它添加了所有年份,但是如果其中不止一个,它会不止一次添加它们。我不知道如何让每个只出现一次(例如 2012,2011,2010。而不是 2012,2012,2012,2011,2010,2010)。这是我的代码:

ListPreference listPreferenceCategory = (ListPreference) findPreference("Filter");

entries = new ArrayList<String>();
values = new ArrayList<String>();

mySQLiteAdapter = new SQLiteAdapter(this);

mySQLiteAdapter.openToWrite();

cursor = mySQLiteAdapter.queueAll6();
cursor.moveToFirst();

for(int i = 0; i < cursor.getCount();i++)
{

String year = cursor.getString(cursor.getColumnIndex(SQLiteAdapter.YEAR));

if(Arrays.asList(entries).contains(year) == false){

entries.add(year);

values.add(year);
}

cursor.moveToNext();

}


final CharSequence[] charSequenceItems = entries.toArray(new CharSequence[entries.size()]);
final CharSequence[] charSequenceItems2 = values.toArray(new CharSequence[values.size()]);

listPreferenceCategory.setEntries(charSequenceItems);
listPreferenceCategory.setEntryValues(charSequenceItems2);


mySQLiteAdapter.close();

最佳答案

想通了。我需要使用 String[] array = entries.toArray(new String[entries.size()]);然后 Arrays.asList(array).contains(year) == false

关于android - 创建动态 ListPreference (Android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11852106/

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