Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/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中不显示?_Android_Sqlite_Android Listview - Fatal编程技术网

列表视图在android中不显示?

列表视图在android中不显示?,android,sqlite,android-listview,Android,Sqlite,Android Listview,我正在尝试从SQLite获取数据到列表视图,但我的列表视图未显示 任何东西我不理解这个问题,因为logcat中没有错误。 请给我提示或建议。 这是我的示例代码 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.locprofile); ArrayAdapter<Model> ad

我正在尝试从SQLite获取数据到列表视图,但我的列表视图未显示
任何东西我不理解这个问题,因为logcat中没有错误。
请给我提示或建议。
这是我的示例代码

protected void onCreate(Bundle savedInstanceState) {


    super.onCreate(savedInstanceState);
    //setContentView(R.layout.locprofile);
    ArrayAdapter<Model> adapter = new InteractiveArrayAdapter(this,
            getModel());
    setListAdapter(adapter);}

private void setListAdapter(ArrayAdapter<Model> adapter) {
    // TODO Auto-generated method stub

}

private List<Model> getModel()
{
    List<Model> list = new ArrayList<Model>();
    final MySQLiteHelper m=new MySQLiteHelper(getBaseContext());
    final List<LocWiseProfileBeans> LocWiseProfile= m.getAllLocWiseProfile();       

    for (final LocWiseProfileBeans cn : LocWiseProfile) {



    list.add(get(cn.getLocname()));
    list.add(get(cn.getSelectedprofile()));

    // Initially select one of the items
    list.get(1).setSelected(true);

    }
    return list;
}

private Model get(String s) {
    return new Model(s);
}
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
//setContentView(R.layout.locprofile);
ArrayAdapter=新的InteractiveArrayAdapter(此,
getModel());
setListAdapter(适配器);}
专用void setListAdapter(ArrayAdapter适配器){
//TODO自动生成的方法存根
}
私有列表getModel()
{
列表=新的ArrayList();
final MySQLiteHelper m=新的MySQLiteHelper(getBaseContext());
最终列表LocWiseProfile=m.getAllLocWiseProfile();
对于(最终LocWiseProfileBeans cn:LocWiseProfile){
add(get(cn.getLocname());
list.add(get(cn.getSelectedprofile());
//首先选择其中一项
list.get(1).setSelected(true);
}
退货清单;
}
私有模型获取(字符串s){
退回新型号;
}
InteractiveArrayAdapter.java

public class InteractiveArrayAdapter extends ArrayAdapter<Model> {

private final List<Model> list;
private final Activity context;

public InteractiveArrayAdapter(Activity context, List<Model> list) 
{
    super(context, R.layout.locprofile, list);
    this.context = context;
    this.list = list;
}

static class ViewHolder {
    protected TextView text;
    protected CheckBox checkbox;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {

    View view = null;

    if (convertView == null) {


        LayoutInflater inflator = context.getLayoutInflater();
        view = inflator.inflate(R.layout.locprofile, null);

        final ViewHolder viewHolder = new ViewHolder();

        viewHolder.text = (TextView) view.findViewById(R.id.label);
        viewHolder.checkbox = (CheckBox) view.findViewById(R.id.check);
        viewHolder.checkbox
                .setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

                    @Override
                    public void onCheckedChanged(CompoundButton buttonView,
                            boolean isChecked) {
                        Model element = (Model) viewHolder.checkbox
                                .getTag();
                        element.setSelected(buttonView.isChecked());

                    }
                });
        view.setTag(viewHolder);
        viewHolder.checkbox.setTag(list.get(position));

    } else {

        view = convertView;
        ((ViewHolder) view.getTag()).checkbox.setTag(list.get(position));

    }

    ViewHolder holder = (ViewHolder) view.getTag();
    holder.text.setText(list.get(position).getName());
    holder.checkbox.setChecked(list.get(position).isSelected());


    return view;
}
公共类InteractiveArrayAdapter扩展了ArrayAdapter{
私人最终名单;
私人最终活动背景;
公共InteractiveArrayAdapter(活动上下文、列表)
{
super(上下文、R.layout.locprofile、列表);
this.context=上下文;
this.list=列表;
}
静态类视窗夹{
受保护的文本查看文本;
受保护复选框;
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
视图=空;
if(convertView==null){
LayoutInflater充气器=上下文。getLayoutInflater();
视图=充气机充气(R.layout.locprofile,空);
最终ViewHolder ViewHolder=新的ViewHolder();
viewHolder.text=(TextView)view.findViewById(R.id.label);
viewHolder.checkbox=(checkbox)view.findViewById(R.id.check);
viewHolder.checkbox
.setOnCheckedChangeListener(新建CompoundButton.OnCheckedChangeListener(){
@凌驾
检查更改后的公共无效(复合按钮视图,
布尔值(已检查){
模型元素=(模型)viewHolder.checkbox
.getTag();
element.setSelected(buttonView.isChecked());
}
});
view.setTag(viewHolder);
viewHolder.checkbox.setTag(list.get(position));
}否则{
视图=转换视图;
((ViewHolder)view.getTag()).checkbox.setTag(list.get(position));
}
ViewHolder=(ViewHolder)view.getTag();
holder.text.setText(list.get(position.getName());
holder.checkbox.setChecked(list.get(position.isSelected());
返回视图;
}
}删除:

private void setListAdapter(ArrayAdapter<Model> adapter) {
    // TODO Auto-generated method stub

}
private void setListAdapter(ArrayAdapter适配器){
//TODO自动生成的方法存根
}
然后重试。

删除:

private void setListAdapter(ArrayAdapter<Model> adapter) {
    // TODO Auto-generated method stub

}
private void setListAdapter(ArrayAdapter适配器){
//TODO自动生成的方法存根
}

然后重试。

并更换
setListAdapter(适配器)通过
设置适配器(适配器)。设定一个contentView@njzk2是的,如果他正在扩展一个简单的
活动
,他将不得不在他的
ListView
对象上调用
setAdapter()
,我只是假设他扩展
ListActivity
setAdapter
是来自
ListActivity
的方法。如果
setListAdapter
是一个继承的方法,那么他无法像that@njzk2
ListActivity
没有方法
setAdapter()
ListView
有此方法。他可能扩展了一个简单的
Activity
,并尝试使用
ListActivity
中不存在的方法
setListAdapter()
,当Eclipse抱怨时,他使用了
CTRL+1
并简单地创建了一个私有方法。是的,如果我能正确读取类名,这正是我的意思。谢谢并更换
setListAdapter(适配器)通过
设置适配器(适配器)。设定一个contentView@njzk2是的,如果他正在扩展一个简单的
活动
,他将不得不在他的
ListView
对象上调用
setAdapter()
,我只是假设他扩展
ListActivity
setAdapter
是来自
ListActivity
的方法。如果
setListAdapter
是一个继承的方法,那么他无法像that@njzk2
ListActivity
没有方法
setAdapter()
ListView
有此方法。他可能扩展了一个简单的
Activity
,并尝试使用
ListActivity
中不存在的方法
setListAdapter()
,当Eclipse抱怨时,他使用了
CTRL+1
并简单地创建了一个私有方法。是的,如果我能正确读取类名,这正是我的意思。谢谢