更具体地说,我在SherlockListFragment
内使用ViewPager
以及以下布局
(full source):
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<RelativeLayout
android:id="@+id/filter_bar"
android:layout_width="wrap_content"
android:layout_height="48dp"
android:layout_alignParentBottom="true"
...
/>
<ListView
android:id="@android:id/list"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignWithParentIfMissing="true"
android:layout_above="@+id/filter_bar"
... />
<TextView
android:id="@android:id/empty"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignWithParentIfMissing="true"
android:layout_above="@+id/filter_bar"
android:text="..."
android:visibility="invisible"
.../>
</RelativeLayout>
当我打开应用程序时,我看到了:
看起来很好。然后我连接并打开一个过滤器,它现在是空的
请注意,ListView的大小调整得很好。现在我输入过滤器来过滤掉所有内容:
糟糕!操作栏从显示屏上消失!但是,如果在ViewPager中来回滑动并再次执行,一切都会变得很好(并保持正常):
我可以做些什么来使空视图正常运行,就像ListView一样?
答案 0 :(得分:0)
将windowSoftInputMode设置为AndroidManifest.xml中的活动声明。像这样的东西
<activity
android:name=".controll.MyActivity"
android:label="@string/title_activity_my"
android:windowSoftInputMode="adjustResize"/>