【发布时间】:2015-01-18 23:49:56
【问题描述】:
我看到了许多在 ListActivity 中填充 ListView 的示例。我想要一个动态填充的 ListView,但在一个带有操作栏的活动中。
所以不是(就像我看到的例子):
public class EditHolidaysActivity extends ListActivity {
我有:
public class EditHolidaysActivity extends ActionBarActivity {
但是 setListAdapter 方法无法解析。我可以使用什么方法来填充 ListView?下面是xml和java的sn-ps:
...
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/Anni"
android:id="@+id/chkbxAnniversary"
android:checked="false"
android:onClick="saveAnniPref"/>
<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />
</LinearLayout>
Java:
public class EditHolidaysActivity extends ActionBarActivity {
public static final String PREFS_NAME = MainActivity.PREFS_NAME;
private final static String TEXT_DATA_KEY = "textData";
private CommentsDataSource datasource;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_edit_holidays);
datasource = new CommentsDataSource(this);
datasource.open();
List<Comment> values = datasource.getAllComments();
// use the SimpleCursorAdapter to show the
// elements in a ListView
ArrayAdapter<Comment> adapter = new ArrayAdapter<Comment>(this,
android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);
}
谢谢!
【问题讨论】:
-
为什么不使用
myListView = (ListView)findByViewId(R.id.lstName)创建ListView myListView的实例,然后调用myListView.setAdapter(adapter)? -
更正;使用
myListView = (ListView)findViewById(R.id.lstName)- 请参阅下面的答案。
标签: java android listview android-listview listadapter