так что я думаю, что я понял это с небольшим вдохновением от ответа RobGThai, я публикую код для всех желающих, я думаю, что я действительно не использовал пользовательский адаптер
Это очень простой пример, с которого я начал, поэтому, когда у меня это получилось, я убедился, что на моем «MyObject» есть метод toString (), чтобы он правильно отображался в списке, и я передал массив MyObject [] в конструктор "новый ArrayAdapter" вместо listItems
FooList.java
import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
public class FooList extends ListActivity {
String[] listItems = {"item 1", "item 2 ", "list", "android", "item 3", "foobar", "bar", };
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.temp);
setListAdapter(new ArrayAdapter(this, android.R.layout.simple_list_item_1, listItems));
}
}
макет xml, который я использовал (temp.xml)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ListView android:id="@android:id/list" android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<TextView android:id="@android:id/empty" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="Empty set" />
</LinearLayout>