我有一个Activity Extend ListActivity 我想在列表顶部添加LinearLayout或RelativeLayout 喜欢动作片头 但是当我添加XML时 列表不显示,为什么?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent">
<RelativeLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:text="1111"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textView1"/>
</RelativeLayout>
<ListView android:id="@id/android:list" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:layout_weight="1"
android:drawSelectorOnTop="false" android:padding="4dip" />
<TextView android:id="@id/android:empty" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:text="No_data" />
</LinearLayout>
答案 0 :(得分:1)
列表上方的RelativeLayout的高度为fill_parent,并且不会为其下方的列表留下任何空间。尝试在RelativeLayout上为layout_height设置一个不同的值,可以是dips中的常量高度,也可以是wrap_content。
您还希望在根LinearLayout上使用orientation =“vertical”。
答案 1 :(得分:0)
答案 2 :(得分:0)
您已扩展ListActivity。您只需要扩展一个普通的Activity并使用ListView而不是ListActivity。
请参阅链接here
以下是您需要的文字
ListActivity具有默认布局 由单个全屏列表组成 在屏幕的中央。然而, 如果你愿意,你可以自定义 通过设置自己的视图来布局屏幕 使用setContentView()的布局 的onCreate()。要做到这一点,你自己的观点 必须包含一个ListView对象 id“@android:id / list”(或列出if 它在代码中)
答案 3 :(得分:0)
我遇到了同样的问题,没有出现任何问题。对我来说问题是Android没有正确地重新充气资源。在这里添加第二行为我修复了它:
final boolean useCustomTitle=requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
getWindow().getDecorView();//required to make title show up
if(useCustomTitle)
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.my_custom_title);
第二行返回一个视图,但我不需要它。但是,没有它,代码将无法运行。如果您需要找到解决方法,可以在线查找Android源代码。
private TextView mTitleView
仍未更新,因此您可以覆盖setTitle或使用反射。