Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
删除Android中Listview的默认内容_Android_Listview - Fatal编程技术网

删除Android中Listview的默认内容

删除Android中Listview的默认内容,android,listview,Android,Listview,我正在从事一个android项目,在这个项目中,我需要使用数组在ListView中动态显示数据。 一切正常,只是列表的默认布局也出现在需要删除的列表视图中 这是main_activity.xml <com.andexert.expandablelayout.library.ExpandableLayoutListView android:id="@+id/listview" android:layout_below="@+id/first" android:lay

我正在从事一个android项目,在这个项目中,我需要使用数组在
ListView
中动态显示数据。 一切正常,只是列表的默认布局也出现在需要删除的列表视图中

这是main_activity.xml

 <com.andexert.expandablelayout.library.ExpandableLayoutListView
    android:id="@+id/listview"
    android:layout_below="@+id/first"
    android:layout_width="match_parent"
    android:layout_marginTop="15dp"
    android:layout_height="match_parent">
    </com.andexert.expandablelayout.library.ExpandableLayoutListView>

这是我的list_row.xml

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="vertical">
    <ImageView
        android:id="@+id/icon"
        android:layout_width="80dp"
        android:layout_height="80dp"
        android:contentDescription="@string/image"
        android:paddingLeft="10dp"
        android:paddingRight="10dp"
        android:foregroundGravity="center"
        android:layout_gravity="center_horizontal" />

    <TextView
        android:id="@+id/title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@+id/icon"
        android:paddingBottom="10dp"
        android:textColor="#CC0033"
        android:textSize="16dp"
        android:layout_gravity="center_horizontal" />

    <TextView
        android:id="@+id/desc"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/title"
        android:layout_toRightOf="@+id/icon"
        android:paddingLeft="10dp"
        android:textColor="#3399FF"
        android:textSize="14dp" />
</LinearLayout>

这是我的护照

   public class CustomListViewAdapter extends ArrayAdapter<RowItem> {

    Context context;

    public CustomListViewAdapter(Context context, int resourceId,
                                 List<RowItem> items) {
        super(context, resourceId, items);
        this.context = context;
    }

    /*private view holder class*/
    private class ViewHolder {
        ImageView imageView;
        TextView txtTitle;
        //TextView txtDesc;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder holder = null;
        RowItem rowItem = getItem(position);

        LayoutInflater mInflater = (LayoutInflater) context
                .getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
        if (convertView == null) {
            convertView = mInflater.inflate(R.layout.view_row, null);
            holder = new ViewHolder();
           // holder.txtDesc = (TextView) convertView.findViewById(R.id.desc);
            holder.txtTitle = (TextView) convertView.findViewById(R.id.title);
            holder.imageView = (ImageView) convertView.findViewById(R.id.icon);
            convertView.setTag(holder);
        } else
            holder = (ViewHolder) convertView.getTag();

       // holder.txtDesc.setText(rowItem.getDesc());
        holder.txtTitle.setText(rowItem.getTitle());
        holder.imageView.setImageResource(rowItem.getImageId());

        return convertView;
    }
}
公共类CustomListViewAdapter扩展了ArrayAdapter{
语境;
公共CustomListViewAdapter(上下文上下文,int resourceId,
(列表项目){
超级(上下文、资源ID、项目);
this.context=上下文;
}
/*私有视图持有者类*/
私有类视窗持有者{
图像视图图像视图;
TextView-txtTitle;
//TextView-txtDesc;
}
公共视图getView(int位置、视图转换视图、视图组父视图){
ViewHolder=null;
RowItem RowItem=getItem(位置);
LayoutInflater mInflater=(LayoutInflater)上下文
.getSystemService(活动.布局\充气机\服务);
if(convertView==null){
convertView=mInflater.充气(R.layout.view\u行,空);
holder=新的ViewHolder();
//holder.txtDesc=(TextView)convertView.findViewById(R.id.desc);
holder.txtTitle=(TextView)convertView.findViewById(R.id.title);
holder.imageView=(imageView)convertView.findViewById(R.id.icon);
convertView.setTag(支架);
}否则
holder=(ViewHolder)convertView.getTag();
//holder.txtDesc.setText(rowItem.getDesc());
holder.txtitle.setText(rowItem.getTitle());
holder.imageView.setImageResource(rowItem.getImageId());
返回视图;
}
}
这是主要的活动

public class MainActivity extends Activity {

private final String[] array = {"Hello", "World", "Android", "is", "Awesome", "World", "Android", "is", "Awesome", "World", "Android", "is", "Awesome", "World", "Android", "is", "Awesome"};
private final Integer[] images ={R.drawable.milk , R.drawable.bread , R.drawable.egg,R.drawable.fruit};
public static final String[] titles = new String[] { "Strawberry",
        "Banana", "Orange", "Mixed" };

public static final String[] descriptions = new String[] {
        "It is an aggregate accessory fruit",
        "It is the largest herbaceous flowering plant", "Citrus Fruit",
        "Mixed Fruits" };


ListView listView;
List<RowItem> rowItems;

@Override
protected void onCreate(Bundle savedInstanceState) {


    System.out.println("*******************************************");
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    rowItems = new ArrayList<RowItem>();
    for (int i = 0; i < titles.length; i++) {
        RowItem item = new RowItem(images[i], titles[i], descriptions[i]);
        rowItems.add(item);
    }
    listView = (ListView) findViewById(R.id.listview);

    CustomListViewAdapter adapter = new CustomListViewAdapter(this,
            R.layout.view_row, rowItems);
    listView.setAdapter(adapter);

}
公共类MainActivity扩展活动{
私有最终字符串[]数组={“Hello”、“World”、“Android”、“is”、“Awesome”、“World”、“Android”、“is”、“Awesome”、“World”、“Android”、“is”、“Awesome”、“World”、“Android”、“is”、“Awesome”};
私有最终整数[]图像={R.drawable.milk,R.drawable.bread,R.drawable.egg,R.drawable.fruit};
公共静态最终字符串[]标题=新字符串[]{“草莓”,
“香蕉”、“橘子”、“混合”};
公共静态最终字符串[]说明=新字符串[]{
“它是一种聚合的附属水果”,
“最大的草本开花植物”、“柑橘类水果”,
“混合水果”};
列表视图列表视图;
列出项目;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
System.out.println(“*************************************************************”);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
rowItems=新的ArrayList();
对于(int i=0;i
上述代码的输出为:

图像和内容来自一个数组..但我在开始时也会获得默认行。如何删除该默认行并仅显示来自数组的数据?您的库使用该行

你的图书馆使用这个


您是否为ListView设置了任何标题?您是否为ListView设置了任何标题?谢谢,fr replay,但我不明白您的答案。您能否详细说明您的答案。您所说的内容已经很简单,例如您调用
ListView=(ListView)findViewById(R.id.ListView);
您可以使用
FrameLayout=(FrameLayout)findViewById(R.id.listview);
然后调用
FrameLayout.setVisibility(View.INVISIBLE);
谢谢,fr replay,但我不明白你的答案。你能详细说明你的答案吗。你所说的事情已经很简单了,比如你调用
listview=(listview)findViewById(R.id.listview)
您可以使用
FrameLayout FrameLayout=(FrameLayout)findViewById(R.id.listview);
然后调用
FrameLayout.setVisibility(View.INVISIBLE);
<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:layout_width="match_parent"
                android:layout_height="wrap_content">
    <FrameLayout
        android:id="@+id/view_expandable_headerlayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>

    <FrameLayout
        android:id="@+id/view_expandable_contentLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/view_expandable_headerlayout"/>

</RelativeLayout>
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <declare-styleable name="ExpandableLayout">
        <attr name="el_headerLayout" format="reference"/>
        <attr name="el_contentLayout" format="reference" />
        <attr name="el_duration" format="integer" />
    </declare-styleable>
</resources>