Я использую код this blog, чтобы иметь перетаскиваемый список. В этом учебнике используется пользовательский DragNDropAdapter , который принимает содержимое как ArrayList.данные от sqlite в ArrayList <String>
В моем спискеActivity я запрашиваю таблицу с возвращенным столбцом name
. У нее введено 11 значений. я попытался преобразовать его в ArrayList из String [] со многими способами, такими как:
String[] from = new String[]{DbManager.KEY_NAME};
ArrayList<String> content = new ArrayList<String>();
for (int i=-1,l=from.length; ++i<l;) {
content.add(from[i]);
//Log.i("ArrayList", from[i]);
}
или
while(!mShopCatCursor.isAfterLast()){
content.add(mShopCatCursor.getString(0));
}
, что я получаю список только с именем столбца, name
. у вас есть какие-либо идеи
спасибо, что сработало и разумно. я был смущен из многих учебников, в которых использовался приведенный выше синтаксис String [] from = new String [] {DbManager.KEY_NAME}; и импортировать из массива в ListAdapters. у меня есть вопрос, хотя относительно вашего ответа. Почему я должен использовать if (userCur! = Null) в первой строке, а не что-то вроде этого: cursor.moveToFirst(), а затем цикл while. И второй вопрос, почему мне нужна функция обрезки внутри цикла. Большое спасибо в любом случае –
Рад, что это сработало. Пожалуйста, примите в качестве ответа. Насладитесь программированием. – kosa
Это зависит от способа реализации метода getYourData(). Некоторая реализация может быть нулевой, если курсор равен null, cursor.moveToFirst() будет вызывать исключение NullPointerException. Таким образом, всегда лучше делать нулевую проверку. – kosa