自定义ListView TextView项目都在顶部显示灰色条

时间:2013-02-19 00:56:32

标签: java android android-listview

我在我的应用程序的ListActivity中使用的自定义ListView出现问题。我的问题是通过ArrayAdapter添加到ListView的所有TextView项目都显示在它们上方的灰色条。我将包含显示的ListView的图像,但由于stackoverflow站点不需要10的声誉,因此无法使用。

用于生成ListView的布局文件(index.xml)定义如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout  
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
    android:orientation="vertical" >

    <ListView 
        android:divider="@color/mg_red" 
        android:dividerHeight="1sp"
        android:id="@android:id/list"
        android:layout_height="fill_parent"
        android:layout_width="fill_parent" />


    <TextView 
        android:title="text_view"
        android:background="@drawable/listitemback"
        android:cacheColorHint="@drawable/listitemback"
        android:id="@+id/listItem"
        android:layout_width="fill_parent"    
        android:layout_height="fill_parent" 
        android:padding="10sp"    
        android:textColor="@color/listitemtext"
        android:textSize="16sp" />    

</LinearLayout>

用于显示列表的ListActivity代码如下:

public class IndexListActivity extends ListActivity
{
    private ListView m_listView = null;

    @Override
    public void onCreate(Bundle savedInstanceState) 
    {       
        try 
        {
            if (MGApplication.DEBUG_BUILD)
            Log.i("TMG", "IndexListActivity.onCreate");

        super.onCreate(savedInstanceState);

        // Get our global data object.
        MGApplication mgApp = (MGApplication) getApplication();

        // Set view layout
        SetContentView(R.layout.index);

        // Get references to our ListView and AdView objects
        m_listView = (ListView) findViewById(android.R.id.list);


            // Create a new ArrayAdapter object that will be used to initialize 
        // the underlying ListView object.
        ArrayAdapter<String> aa = new ArrayAdapter<String>(this, R.layout.index,
                                                               R.id.listItem,
                                                               mgApp.m_strAZRhymeNames);

        // Assign array adapter
        m_listView.setAdapter(aa);
        }        
        catch (Exception e)
        {
        }

        return;
    }   
}

任何帮助都非常感谢,因为我在这个问题上的最终结果。我想我已经尝试了我在网上找到的所有建议,而我无法移除灰色条。

谢谢,

鲍勃

1 个答案:

答案 0 :(得分:0)

您必须使用。

test.xml 文件中设置此属性
     <ListView
            android:id="@+id/listview_middle"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_margin="1dip"
            android:layout_weight="1"
            android:background="#ffffff"
            android:cacheColorHint="@android:color/transparent"
            android:choiceMode="singleChoice"
            android:scrollingCache="false" />

并在列表视图对象中设置一些属性。

lv.setVerticalFadingEdgeEnabled(false);

在我这方面,这是完美的工作。