Android 包含标题、图像和文本的列表视图?

Android 包含标题、图像和文本的列表视图?,android,android-layout,listview,android-xml,Android,Android Layout,Listview,Android Xml,我需要制作一个列表视图,左侧有一个图像,右侧有一个标题,下面有一个描述。 我已经在文档中签出了列表视图,但我似乎找不到这方面的示例。 我有一个XML中定义的选项卡视图(根据android示例tabs1),第一个选项卡内容是列表视图。 但是,我想通过RSS新闻源在代码中将内容添加到listview中 我在考虑使用一个使用html注入字符串的webview,但是如何从drawable文件夹插入图像呢。(这些图像只是本地存储的“新闻图标”,而不是来自互联网的图像) 很抱歉,如果这是一个小问题,但任何帮

我需要制作一个列表视图,左侧有一个图像,右侧有一个标题,下面有一个描述。 我已经在文档中签出了列表视图,但我似乎找不到这方面的示例。 我有一个XML中定义的选项卡视图(根据android示例tabs1),第一个选项卡内容是列表视图。 但是,我想通过RSS新闻源在代码中将内容添加到listview中

我在考虑使用一个使用html注入字符串的webview,但是如何从drawable文件夹插入图像呢。(这些图像只是本地存储的“新闻图标”,而不是来自互联网的图像)


很抱歉,如果这是一个小问题,但任何帮助都很感谢:)

我想您描述的结构是指ListView项的内容。可以通过为单个项目定义布局来实现这一点。以下代码在类似情况下对我有效:

<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:padding="6dip" android:layout_height="?android:attr/listPreferredItemHeight">
    <ImageView
        android:id="@+id/result_icon"        
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentBottom="true"
        android:layout_marginRight="6dip"        
        android:src="@drawable/image1"/>
    <TextView
        android:id="@+id/result_name"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"        
        android:layout_toRightOf="@id/result_icon"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"        
        android:layout_alignWithParentIfMissing="true"                
        android:gravity="center_vertical"
        android:text="Title" />
    <TextView  
        android:id="@+id/result_second_line"
        android:layout_width="fill_parent"
        android:layout_height="26dip"      
        android:layout_toRightOf="@id/result_icon"
        android:layout_below="@id/result_name"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"        
        android:singleLine="true"
        android:ellipsize="marquee"
        android:text="Second line" />
</RelativeLayout>

您也可以在这里查看此页面,以获得非常好的布局



您需要将listview项设计为包含textview和imageview

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="horizontal" >

 <ImageView
 android:id="@+id/imageView"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content" />

 <TextView
 android:id="@+id/textView1"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginLeft="40dp"
 android:layout_gravity="center_vertical"
 android:text="TextView" />
<TextView
 android:id="@+id/textView2"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginLeft="40dp"
 android:layout_gravity="center_vertical"
 android:text="TextView" />

</LinearLayout>

我应该注意到RelativeLayout文件可能保存为project/res/layout中的result_item.xml/
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >





    <GridLayout
        android:id="@+id/gridLayout1"
        android:layout_width="match_parent"
        android:layout_height="0dip"
        android:layout_weight="1.07"
        android:columnCount="2" >

        <ImageView
            android:id="@+id/chkItemImage"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:layout_column="0"
            android:layout_gravity="left"
            android:layout_row="0"
            android:layout_rowSpan="3"
            android:src="@drawable/ic_launcher"
            android:scaleType="fitXY" />

        <TextView
            android:id="@+id/chkItemName"
            android:layout_column="1"
            android:layout_gravity="left"
            android:layout_row="0"
            android:text=""
            android:textAppearance="?android:attr/textAppearanceLarge" />

        <TextView
            android:id="@+id/chkItemDescription"
            android:layout_column="1"
            android:layout_gravity="left"
            android:layout_row="1"
            android:text=""
            android:textAppearance="?android:attr/textAppearanceLarge" />

        <TextView
            android:id="@+id/chkItemPrice"
            android:layout_column="1"
            android:layout_gravity="left"
            android:layout_row="2"
            android:text=""
            android:textAppearance="?android:attr/textAppearanceLarge" />


    </GridLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="horizontal" >

 <ImageView
 android:id="@+id/imageView"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content" />

 <TextView
 android:id="@+id/textView1"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginLeft="40dp"
 android:layout_gravity="center_vertical"
 android:text="TextView" />
<TextView
 android:id="@+id/textView2"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginLeft="40dp"
 android:layout_gravity="center_vertical"
 android:text="TextView" />

</LinearLayout>
  LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
  View single_row = inflater.inflate(R.layout.list_row, null,
 true);