データベースからロードされたカスタム行を使用してListViewに問題があります。コンポーネントがリストビューの上にあるときにリストビューにカスタム行を設定できません
リスト画面の場合、リストビューの上にボタンを配置すると、リストビューに表示される行は表示されません。
ただし、ボタンを削除するとすべて正常に機能します。ボタン(または他のコンポーネント)を上に表示して、より使いやすいようにします。以下の2つのコードサンプルが添付されています。
この作品のListView活動の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"
android:background="@color/real_red_dark">
<LinearLayout
android:id="@+id/llMain"
android:layout_height="fill_parent"
android:background="@drawable/real_background"
android:layout_width="fill_parent"
android:layout_gravity="center"
android:gravity="center">
<ListView
android:id="@+android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/llButton"
android:layout_alignParentLeft="true" />
<TextView
android:id="@+android:id/empty"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="@string/no_sessions"
android:textStyle="bold"
android:textSize="18dp"
android:gravity="center"/>
</LinearLayout>
</LinearLayout>
私はそれの上に追加ボタンを持っている場合は、それが全く表示されません。
<?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"
android:background="@color/real_red_dark">
<LinearLayout
android:id="@+id/llMain"
android:layout_height="fill_parent"
android:background="@drawable/real_background"
android:layout_width="fill_parent"
android:layout_gravity="center"
android:gravity="center">
<Button
android:id="@+id/btnSearch"
android:layout_width="fill_parent"
android:layout_height="35dip"
android:layout_gravity="center_horizontal"
android:layout_marginTop="3dip"
android:layout_marginLeft="15dip"
android:layout_marginRight="15dip"
android:text="Find Sessions"
android:textStyle="bold" />
<ListView
android:id="@+android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/llButton"
android:layout_alignParentLeft="true" />
<TextView
android:id="@+android:id/empty"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="@string/no_sessions"
android:textStyle="bold"
android:textSize="18dp"
android:gravity="center"/>
</LinearLayout>
</LinearLayout>
それは私のために働いていましたが、データベースからアイテムが追加されていない(またはダウンロードされていない)場合、ヘッダーには何も表示されません。何か案は? – John
@ John:おそらく 'setEmptyView(...) 'を使ってデータが利用できないことを示すことができます。ヘッダーが表示されないという問題を解決する可能性があります。 http://developer.android.com/reference/android/widget/AdapterView.html#setEmptyView(android.view.View) – Squonk