Java 自定义ListView文本视图项目都在顶部显示灰色条

Java 自定义ListView文本视图项目都在顶部显示灰色条,java,android,android-listview,Java,Android,Android Listview,我在应用程序的ListActivity中使用的自定义ListView有问题。我的问题是,通过ArrayAdapter添加到ListView的所有TextView项都会在其上方显示一个灰色条。我会包括显示的ListView的图像,但我无法,因为我没有stackoverflow站点要求的10的声誉 用于生成ListView的布局文件(index.xml)定义如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout

我在应用程序的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>
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;
    }   
}

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

<?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>
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;
    }   
}
公共类IndexListActivity扩展了ListActivity
{
私有ListView m_ListView=null;
@凌驾
创建时的公共void(Bundle savedInstanceState)
{       
尝试
{
if(MGApplication.DEBUG_BUILD)
Log.i(“TMG”、“IndexListActivity.onCreate”);
super.onCreate(savedInstanceState);
//获取我们的全局数据对象。
MGApplication mgApp=(MGApplication)getApplication();
//设置视图布局
SetContentView(R.layout.index);
//获取对ListView和AdView对象的引用
m_listView=(listView)findviewbyd(android.R.id.list);
//创建将用于初始化的新ArrayAdapter对象
//基础ListView对象。
ArrayAdapter aa=新的ArrayAdapter(此,R.layout.index,
R.id.listItem,
mgApp.m_strAZRhymeNames);
//分配阵列适配器
m_listView.setAdapter(aa);
}        
捕获(例外e)
{
}
返回;
}   
}
任何帮助都是非常感谢的,因为我对这个问题束手无策。我想我已经尝试了在网络上找到的每一个建议,但我无法删除灰色条

谢谢,


Bob

您必须使用在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" />

在我这边,这很好。

您使用的是什么语言?您可以试试这个android:scrollingCache=“false”您识别的其他ListView属性都不能纠正我看到的问题。