2012-03-09 14 views
0

リストビューにSQLiteからデータを取得しようとしていますが、リストビューでは
と表示されません。私はlogcatのエラーがないため、問題を理解していない。
ヒントやご提案をお願いします。リストビューはアンドロイドに表示されませんか?

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

} 

し、再試行してください:ここで

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); 
} 

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; 
} 

}

+0

list.size().....? –

答えて

4

削除..私のサンプルコードです。

+0

'setListAdapter(adapter);を' setAdapter(adapter); 'に置き換えてください。 contentViewを設定する – njzk2

+0

@ njzk2はい、彼が 'ListView'オブジェクトで' setAdapter() 'を呼び出さなければならないシンプルな' Activity'を継承しているなら、 'ListActivity'を継承していると仮定しました。 – Luksprog

+0

'setAdapter'は' ListActivity'のメソッドです。 'setListAdapter'が継承されたメソッドであった場合、彼は可視性をretrictできませんでした。 – njzk2

関連する問題