Я использую этот учебник, чтобы сделать свое приложение для Android. Я хочу показать ответ в listview вместо текстового представления. на сервере теперь я получаю некоторые значения, которые я хочу показать в списке, который можно увидеть как http://mediasense4.appspot.com
Изменение до сегодняшнего дня, которое я сделал до сих пор,
package com.giantflyingsaucer;
import android.app.Activity;
import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
public class AndroidHTTPClient extends ListActivity
{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
RestClient client = new RestClient("http://mediasense4.appspot.com");
setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, client));
ListView lv = getListView();
lv.setTextFilterEnabled(true);
}
}
но это дает мне ошибку в атрибуте set list, который является "Конструктор ArrayAdapter (AndroidHTTPClient, int, RestClient) - undefined"
Я не уверен, что добавляю правильно или нет. пожалуйста, помогите мне
с сервера я получаю ответ в пути
PersistenceManager pm = PMF.get().getPersistenceManager();
String query = "select from " + MediaSenseDb.class.getName() ;
List<MediaSenseDb> greetings = (List<MediaSenseDb>) pm.newQuery(query).execute();
if (greetings.isEmpty()) {
} else {
for (MediaSenseDb g : greetings) {
resp.getWriter().println( g.getDevice_key());
}
}
pm.close();
Вы не можете просто передать любой объект, который вы хотите, в ArrayAdapter. Он ожидает массив строк и передаёт ему RestClient, поэтому конструктор адаптеров не знает, что с ним делать.
Что вам нужно сделать, так это разобрать текстовый ответ severs в удобном для использования формате (Array)