正如标题所示,我想为列表活动设置默认视图。我试图这样做:
TextView emptyView = new TextView(this);
emptyView.setText("No lists available");
this.getListView().setEmptyView(emptyView);
但这没有用。
问题是它emptyView
永远不会附加到任何东西上,如果你使用addView()
:
TextView emptyView = new TextView(this);
((ViewGroup) getListView().getParent()).addView(emptyView);
emptyView.setText("It's empty!");
getListView().setEmptyView(emptyView);
现在你会看到它!
我写了一个快速 Runnable 在空/“满”之间交替...
public class Example extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView emptyView = new TextView(this);
((ViewGroup) getListView().getParent()).addView(emptyView);
emptyView.setText("It's empty!");
getListView().setEmptyView(emptyView);
getListView().postDelayed(new Runnable() {
@Override
public void run() {
if(getListAdapter() == null)
setListAdapter(new ArrayAdapter<String>(Example.this, android.R.layout.simple_list_item_1, new String[] {"It", "Has", "Content"}));
else
setListAdapter(null);
getListView().postDelayed(this, 2000);
}
}, 2000);
}
}