Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.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 如何合并StickyListHeaderListView和游标_Android_Database_Android Listview_Adapter - Fatal编程技术网

Android 如何合并StickyListHeaderListView和游标

Android 如何合并StickyListHeaderListView和游标,android,database,android-listview,adapter,Android,Database,Android Listview,Adapter,嗨,我正在尝试制作一个ListView,它实现了StickyListHeadersListView库,并从游标获取数据。我在StickyListHeaderAdapter中遇到困难,我试图使用游标而不是字符串[]。我正在寻找一些指导代码,但我看到的所有示例都使用字符串[] 我的问题是 在getCount()中,它说我需要一个整数,而不是android.database.Cursor有没有其他方法来完成这个任务 无法解析方法setText(android.database.Cursor),我知道我

嗨,我正在尝试制作一个
ListView
,它实现了
StickyListHeadersListView
库,并从游标获取数据。我在
StickyListHeaderAdapter
中遇到困难,我试图使用游标而不是
字符串[]
。我正在寻找一些指导代码,但我看到的所有示例都使用字符串[]

我的问题是

  • getCount()
    中,它说我需要一个整数,而不是
    android.database.Cursor
    有没有其他方法来完成这个任务
  • 无法解析方法
    setText(android.database.Cursor)
    ,我知道我必须在这里使用
    String[]
    ,但还有什么其他方法 这是我的密码

    public class StickyHeaderAdapter extends BaseAdapter implements StickyListHeadersAdapter {
    
    private Cursor information, header;
    private LayoutInflater inflater;
    DBHelper dbHelper;
    
    public StickyHeaderAdapter(Context context, Cursor countries, Cursor header) {
        inflater = LayoutInflater.from(context);
        countries = dbHelper.getInformationItems();
        header = dbHelper.getInformationHeader();
    }
    
    @Override
    public int getCount() {
        return information;
    }
    
    @Override
    public Object getItem(int position) {
        return information;
    }
    
    @Override
    public long getItemId(int position) {
        return position;
    }
    
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder holder;
    
        if (convertView == null) {
            holder = new ViewHolder();
            convertView = inflater.inflate(R.layout.text_list_item_layout, parent, false);
            holder.text = (TextView) convertView.findViewById(R.id.list_title);
            convertView.setTag(holder);
        } else {
            holder = (ViewHolder) convertView.getTag();
        }
    
        holder.text.setText(information );
        return convertView;
    }
    
    @Override
    public View getHeaderView(int position, View convertView, ViewGroup parent) {
        HeaderViewHolder holder;
        if (convertView == null) {
            holder = new HeaderViewHolder();
            convertView = inflater.inflate(R.layout.header, parent, false);
            holder.text = (TextView) convertView.findViewById(R.id.header);
            convertView.setTag(holder);
        } else {
            holder = (HeaderViewHolder) convertView.getTag();
        }
    
    
        holder.text.setText(header);
        return convertView;
    }
    
    @Override
    public long getHeaderId(int position) {
        return position;
    }
    
    class HeaderViewHolder {
        TextView text;
    }
    
    class ViewHolder {
        TextView text;
     }
    
    }
    
    非常感谢你的帮助