问题描述
|
我正在尝试添加它,什么也没有发生。我已经对我的arrrayadapter进行了调整,它应该可以工作。
public class TaskTracker extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button addButton;
addButton=(Button)findViewById(R.id.button1);
ListView myListView= (ListView)findViewById(R.id.listView1);
final EditText myEditText= (EditText)findViewById(R.id.editText1) ;
//this.setlistadapter(new ArrayAdapter<String>(this,R.layout.row));
final ArrayList<String> items = new ArrayList<String>();
//this.setlistadapter(new TTAdapterView(this,items));
final TTAdapterView aa = new TTAdapterView(this,items);
//final ArrayAdapter<String> aa = new ArrayAdapter<String>(
// aa = new ArrayAdapter<String>(this,0);
//myListView.setAdapter(aa);
addButton.setonClickListener(new OnClickListener(){
public void onClick(View v){
aa.add(myEditText.getText().toString());
//taskitems.add(count,myEditText.getText().toString());
aa.notifyDataSetChanged();
myEditText.setText(\"\");
myEditText.requestFocus();
}
});
}
}
public class TTAdapterView extends ArrayAdapter<String> {
private final Activity context1;
private final ArrayList<String> items;
public TTAdapterView(Activity context,ArrayList<String> items){
super(context,R.layout.row,items);
this.context1 = context;
this.items = items;
}
static class ViewHolder{
public TextView task;
public Chronometer time;
public CheckBox complete;
}
@Override
public View getView(int position,View convertView,ViewGroup parent){
ViewHolder holder;
View rowView = convertView;
if(rowView==null){
LayoutInflater vi = context1.getLayoutInflater();
rowView = vi.inflate(R.layout.row,null,true);
holder = new ViewHolder();
holder.task = (TextView) rowView.findViewById(R.id.textView1);
holder.time = (Chronometer) rowView.findViewById(R.id.chronometer1);
holder.complete = (CheckBox) rowView.findViewById(R.id.checkBox1);
rowView.setTag(holder);
}
else{
holder = (ViewHolder) rowView.getTag();
}
return rowView;
}
}
关于为什么不更新的任何想法?谢谢
解决方法
这个答案是正确的,
String taskText=items.get(position);
holder.task.setText(taskText);
,您没有在列表视图中为行设置内容-_-!
至少您应该在getView中执行此操作:
String taskText=items.get(position);
holder.task.setText(taskText);