BaseAdapter扩展了问题

时间:2011-04-14 05:38:36

标签: android

我需要在这个listview中添加一个复选框,我有一个带有textview / chrono / checkbox的row.xml设置。我是否必须在我的baseadapter扩展中显示复选框?还有为什么getSystemService()错误出现在我身上?

package com.walkarchdev.tasktracker;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.BaseAdapter;
import android.widget.Chronometer;
import android.widget.TextView;

public class TTAdapterView extends BaseAdapter {

public View v;

public TTAdapterView(Context context){
    super();

}

@Override
public View getView(int position, View convertView, ViewGroup parent){
    this.v = convertView;

    if(v==null){
        LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        v = vi.inflate(R.layout.row, null);
    }
    TextView task = (TextView)v.findViewById(R.id.textView1);
    Chronometer time = (Chronometer)v.findViewById(R.id.chronometer1);
    //Checkbox complete = (Checkbox)v.findViewById(R.id.checkBox1);

    return v;
}

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

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

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


}

2 个答案:

答案 0 :(得分:1)

  

为什么getSystemService()   我错了?

getSystemService()Context上的一种方法。保存在构造函数中作为参数传递的上下文,并使用它来调用getSystemService()方法

Do I have to show the checkbox in my baseadapter extending?

如果您打算使用复选框的状态,则必须将其存储在变量中以监控已检查的状态

答案 1 :(得分:0)

如果没有在适配器中手动处理复选框状态,则在向下滚动时,ListView中的复选框状态会出现问题。

您拨打getSystemService会出现什么样的错误?