Android 自定义ListActivity布局的正确格式
我试图在ListActivity中声明的ListView的顶部添加一个标题,并尝试使用一种方法,其中一个方法将ListView包含在LinearLayout中,并且将ListView的id设置为@android:id/listAndroid 自定义ListActivity布局的正确格式,android,xml,layout,listactivity,Android,Xml,Layout,Listactivity,我试图在ListActivity中声明的ListView的顶部添加一个标题,并尝试使用一种方法,其中一个方法将ListView包含在LinearLayout中,并且将ListView的id设置为@android:id/list <ListView android:id="@android:id/list" android:layout_width="fill_parent" android:layout_height="wrap_content"> <L
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="0dip">
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="6dip"/>
<LinearLayout
android:orientation="vertical"
android:layout_width="224dip"
android:layout_weight="1"
android:layout_height="fill_parent"
android:layout_marginRight="20dip">
<TextView
android:id="@+id/toptext"
android:layout_width="fill_parent"
android:singleLine="true"
android:layout_height="0dip"
android:layout_weight="1"
android:gravity="center_vertical"
android:textStyle="bold"
android:textSize="21sp"
android:textColor="@color/white"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:id="@+id/bottomtext"
android:textSize="19sp"
android:textStyle="italic"
android:maxLines="1"/>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="100dip"
android:layout_weight="1"
android:layout_height="fill_parent">
<TextView
android:id="@+id/toprighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="top"
android:textColor="@color/blue"
/>
<TextView
android:id="@+id/bottomrighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="bottom"
android:textColor="@color/red"
/>
</LinearLayout>
</LinearLayout>
</ListView>
</LinearLayout>
我收到一个java.lang.UnsupportedOperationException:AdapterView中不支持addView(View,LayoutParams)
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="0dip">
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="6dip"/>
<LinearLayout
android:orientation="vertical"
android:layout_width="224dip"
android:layout_weight="1"
android:layout_height="fill_parent"
android:layout_marginRight="20dip">
<TextView
android:id="@+id/toptext"
android:layout_width="fill_parent"
android:singleLine="true"
android:layout_height="0dip"
android:layout_weight="1"
android:gravity="center_vertical"
android:textStyle="bold"
android:textSize="21sp"
android:textColor="@color/white"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:id="@+id/bottomtext"
android:textSize="19sp"
android:textStyle="italic"
android:maxLines="1"/>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="100dip"
android:layout_weight="1"
android:layout_height="fill_parent">
<TextView
android:id="@+id/toprighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="top"
android:textColor="@color/blue"
/>
<TextView
android:id="@+id/bottomrighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="bottom"
android:textColor="@color/red"
/>
</LinearLayout>
</LinearLayout>
</ListView>
</LinearLayout>
在活动中调用我的setContentView()之后。我似乎找不到问题,我想是格式或其他方面的问题,有人能帮我解决吗
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="0dip">
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="6dip"/>
<LinearLayout
android:orientation="vertical"
android:layout_width="224dip"
android:layout_weight="1"
android:layout_height="fill_parent"
android:layout_marginRight="20dip">
<TextView
android:id="@+id/toptext"
android:layout_width="fill_parent"
android:singleLine="true"
android:layout_height="0dip"
android:layout_weight="1"
android:gravity="center_vertical"
android:textStyle="bold"
android:textSize="21sp"
android:textColor="@color/white"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:id="@+id/bottomtext"
android:textSize="19sp"
android:textStyle="italic"
android:maxLines="1"/>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="100dip"
android:layout_weight="1"
android:layout_height="fill_parent">
<TextView
android:id="@+id/toprighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="top"
android:textColor="@color/blue"
/>
<TextView
android:id="@+id/bottomrighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="bottom"
android:textColor="@color/red"
/>
</LinearLayout>
</LinearLayout>
</ListView>
</LinearLayout>
以下是xml:
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="0dip">
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="6dip"/>
<LinearLayout
android:orientation="vertical"
android:layout_width="224dip"
android:layout_weight="1"
android:layout_height="fill_parent"
android:layout_marginRight="20dip">
<TextView
android:id="@+id/toptext"
android:layout_width="fill_parent"
android:singleLine="true"
android:layout_height="0dip"
android:layout_weight="1"
android:gravity="center_vertical"
android:textStyle="bold"
android:textSize="21sp"
android:textColor="@color/white"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:id="@+id/bottomtext"
android:textSize="19sp"
android:textStyle="italic"
android:maxLines="1"/>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="100dip"
android:layout_weight="1"
android:layout_height="fill_parent">
<TextView
android:id="@+id/toprighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="top"
android:textColor="@color/blue"
/>
<TextView
android:id="@+id/bottomrighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="bottom"
android:textColor="@color/red"
/>
</LinearLayout>
</LinearLayout>
</ListView>
</LinearLayout>
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="0dip">
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="6dip"/>
<LinearLayout
android:orientation="vertical"
android:layout_width="224dip"
android:layout_weight="1"
android:layout_height="fill_parent"
android:layout_marginRight="20dip">
<TextView
android:id="@+id/toptext"
android:layout_width="fill_parent"
android:singleLine="true"
android:layout_height="0dip"
android:layout_weight="1"
android:gravity="center_vertical"
android:textStyle="bold"
android:textSize="21sp"
android:textColor="@color/white"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:id="@+id/bottomtext"
android:textSize="19sp"
android:textStyle="italic"
android:maxLines="1"/>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="100dip"
android:layout_weight="1"
android:layout_height="fill_parent">
<TextView
android:id="@+id/toprighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="top"
android:textColor="@color/blue"
/>
<TextView
android:id="@+id/bottomrighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="bottom"
android:textColor="@color/red"
/>
</LinearLayout>
</LinearLayout>
</ListView>
</LinearLayout>
您可以通过在布局中使用单独的header.xml来获得它,在活动的oncreate方法中添加前三行代码,如下所示
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="0dip">
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="6dip"/>
<LinearLayout
android:orientation="vertical"
android:layout_width="224dip"
android:layout_weight="1"
android:layout_height="fill_parent"
android:layout_marginRight="20dip">
<TextView
android:id="@+id/toptext"
android:layout_width="fill_parent"
android:singleLine="true"
android:layout_height="0dip"
android:layout_weight="1"
android:gravity="center_vertical"
android:textStyle="bold"
android:textSize="21sp"
android:textColor="@color/white"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:id="@+id/bottomtext"
android:textSize="19sp"
android:textStyle="italic"
android:maxLines="1"/>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="100dip"
android:layout_weight="1"
android:layout_height="fill_parent">
<TextView
android:id="@+id/toprighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="top"
android:textColor="@color/blue"
/>
<TextView
android:id="@+id/bottomrighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="bottom"
android:textColor="@color/red"
/>
</LinearLayout>
</LinearLayout>
</ListView>
</LinearLayout>
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,
R.layout.brupress_header);
tv = (TextView) findViewById(R.id.brupress_header_text);
tv.setText("Header");
setContentView(R.layout.list_layout);
我希望它能对您有所帮助。既然我扩展了ListActivity,我是仍然调用setContentView还是使用了.getListView()?
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="0dip">
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="6dip"/>
<LinearLayout
android:orientation="vertical"
android:layout_width="224dip"
android:layout_weight="1"
android:layout_height="fill_parent"
android:layout_marginRight="20dip">
<TextView
android:id="@+id/toptext"
android:layout_width="fill_parent"
android:singleLine="true"
android:layout_height="0dip"
android:layout_weight="1"
android:gravity="center_vertical"
android:textStyle="bold"
android:textSize="21sp"
android:textColor="@color/white"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:id="@+id/bottomtext"
android:textSize="19sp"
android:textStyle="italic"
android:maxLines="1"/>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="100dip"
android:layout_weight="1"
android:layout_height="fill_parent">
<TextView
android:id="@+id/toprighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="top"
android:textColor="@color/blue"
/>
<TextView
android:id="@+id/bottomrighttext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="18sp"
android:gravity="bottom"
android:textColor="@color/red"
/>
</LinearLayout>
</LinearLayout>
</ListView>
</LinearLayout>