1

カスタム xml を拡張しないリスト フラグメントがあります。これを行っているのは、コンテンツがインターネットから読み込まれている間、回転する円のプログレス バーが表示されるようにするためです。ただし、ネットワーク例外を受け取った場合、ListView を TextView に置き換えて、「表示できません。画面のどこかを押してリロードしてください」というメッセージを表示します。どうすればいいですか?

現状では、ネットワーク例外がスローされると、サークル プログレス ローダーがスピンしてスピンするだけで、ユーザーには接続が失敗したことはわかりません。ビューでこれを実行したいのですが、アラートやトーストなどは必要ありません。 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 に答える