1

我有一个不会膨胀自定义 xml 的列表片段。我这样做是为了在我的内容从互联网加载时获得旋转的圆形进度条。但是,当我收到网络异常时,我想用 TextView 替换 ListView,上面写着“无法显示等,请按屏幕上的任意位置尝试重新加载”。我该怎么做?

就目前而言,当抛出网络异常时,循环进度加载器只是旋转和旋转,用户没有任何迹象表明连接失败。我想在视图中执行此操作,我不想要警报或 Toast 等。我尝试使用 setEmptyView(myTextView) - 但它不起作用,加载圈仍在屏幕上。如果我在 Xml 中定义空视图,那么“加载圈”永远不会显示,这也不是我想要的。我希望圆圈出现,直到出现异常,然后用那个 TextView 换掉它。

有任何想法吗?

4

2 回答 2

0

使用 setEmptyText() 然后你必须在你的 listView 上设置一个空适配器。如果你不设置适配器,那么现在列表不会因为没有数据而一直显示加载循环。

例如 :

private void onError()
{
    setEmptyText("Network error");
    setListAdapter(new ArrayAdapter(getActivity(), R.layout.item));
}
于 2013-10-31T17:17:52.800 回答
0

您可以setEmptyView("Error oh noo!");像尝试一样使用来显示错误。您只需要显示您的ListView(内容为空)即可显示该空视图。

setEmptyView("Error oh noo!");
if (isResumed())
    setListShown(shown);
else
    setListShownNoAnimation(shown);
于 2013-10-31T14:42:27.850 回答