In the getView method on page 168, i changed the Linearlayout to RelativeLayout in the method since we are using a RelativeLayout.
It works fine but i wondered why the author used LinearLayout...
1. was it a mistake
2. It is more efficient to use LinearLayout
3. is relativelayout a 'special case' of linearlayout -is that why the previous version works?
Cheers.
Here's the code with Relativelayout used instead (works fine)
Code:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
RelativeLayout todoView;
ToDoItem item = getItem(position);
String taskString = item.getTask();
Date createdDate = item.getCreated();
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yy");
String dateString = sdf.format(createdDate);
if (convertView == null) {
todoView = new RelativeLayout(getContext());
String inflater = Context.LAYOUT_INFLATER_SERVICE;
LayoutInflater vi = (LayoutInflater)getContext().getSystemService(inflater);
vi.inflate(resource, todoView, true);
} else {
todoView = (RelativeLayout) convertView;
}
TextView dateView = (TextView)todoView.findViewById(R.id.rowDate);
TextView taskView = (TextView)todoView.findViewById(R.id.row);
dateView.setText(dateString);
taskView.setText(taskString);
return todoView;
}
}