Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.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没有';不能出现在ListActivity中_Android_Listadapter - Fatal编程技术网

Android ListView没有';不能出现在ListActivity中

Android ListView没有';不能出现在ListActivity中,android,listadapter,Android,Listadapter,我的代码是一个ListActivity,用于将数据从dabase加载到listview public class ViewList extends ListActivity { private ListViewAdapter lAdapter; @Override public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); lAdapter = new ListV

我的代码是一个ListActivity,用于将数据从dabase加载到listview

public class ViewList extends ListActivity {
private ListViewAdapter lAdapter;   

@Override
public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    lAdapter = new ListViewAdapter();
    DBAdapter db = new DBAdapter(this);
    db.open();      
    Cursor cursor = db.fetchAllDeliveryItem();
    lAdapter.setCursor(cursor);
    cursor.moveToFirst();
    //Toast.makeText(getApplicationContext(), cursor.getString(1), Toast.LENGTH_SHORT).show();
    setListAdapter(lAdapter);

}
private class ListViewAdapter extends BaseAdapter{
    //String data [] = {"_id","itemname","pickupaddress","deliveryaddress","delivered"};
    private LayoutInflater mInflater;
    //private ArrayList mData = new ArrayList();
    private Cursor cursor;  
     public ListViewAdapter() {
            mInflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        }

    public void setCursor(Cursor cursor)
    {
        this.cursor = cursor;
    }

    @Override
    public int getCount() {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder holder = null;
        Log.i("GetView RUN","Runing runing");
        if (convertView == null) 
        {
            convertView = mInflater.inflate(R.layout.receiverow, null);
            holder = new ViewHolder();
            holder.textView = (TextView)convertView.findViewById(R.id.label);
            holder.checkbox = (CheckBox)convertView.findViewById(R.id.check);
            convertView.setTag(holder);
        } else {
            holder = (ViewHolder)convertView.getTag();
        }           
       // String getPosition[] = (String) mData.get(position);
        //holder.textView.setText(mData.get(position));    
       //holder.textView.setText(cursor.getString(1));
        holder.textView.setText("Test");
       if(cursor.getInt(4)!=0)
       holder.checkbox.setChecked(true);
       else
           holder.checkbox.setChecked(false);
        return convertView;
    }

}
public static class ViewHolder {
    public TextView textView;
    public CheckBox checkbox;
}
}

我在Log cat中看到,方法publicView-getView(int-position,View-convertView,ViewGroup-parent)没有被调用,listview上也没有出现listviewitems 如何修复它?
感谢您的支持。

如果您可以使用以下功能,请不要滚动您自己的适配器:


在适配器
getCount()方法中返回0。这将导致一个没有条目的
列表视图
,它无法显示


getItemId()
返回值也总是相同的值(0),这对于获取工作适配器是不正确的。您只需返回
position
参数即可解决此问题。

为什么要覆盖getView?
@Override
public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);

    DBAdapter db = new DBAdapter(this);
    db.open();
    Cursor cursor = db.fetchAllDeliveryItem();

    // *** replace these strings with the actual *column names* of your query!
    String[] from = { "name_label_column", "name_check_column" };
    int[] to = { R.id.label, R.id.check };

    setListAdapter(new SimpleCursorAdapter(this, R.layout.receiverow, cursor, from, to));
}