package com.novoda;
import android.app.ListActivity;
import android.content.Context;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.LinearLayout;
import android.widget.TextView;
public class StyledListItems extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list);
setListAdapter(new StyledListItemAdapter(this));
}
private class StyledListItemAdapter extends BaseAdapter {
public StyledListItemAdapter(Context context) {
mContext = context;
}
public int getCount() {
return mTitles.length;
}
public Object getItem(int position) {
return position;
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
sv = new StyledItemView(mContext, mTitles[position]);
} else {
sv = (StyledItemView) convertView;
}
sv.setContent(mTitles[position]);
return sv;
}
private Context mContext;
private String[] mTitles =
{
"lorem dipsum",
"lorem dipsum",
"lorem dipsum",
"lorem dipsum",
"lorem dipsum",
"lorem dipsum",
"lorem dipsum",
"lorem dipsum"
};
}
private class StyledItemView extends LinearLayout {
private LayoutInflater mInflater;
public StyledItemView(Context context, String title) {
super(context);
this.setOrientation(VERTICAL);
mInflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout layout = (LinearLayout)mInflater.inflate(R.layout.list_item, null);
mTitle = (TextView)layout.findViewById(R.id.txt_item);
addView(layout);
}
public void setContent(String title) {
mTitle.setText(title);
}
private TextView mTitle;
}
StyledItemView sv;
}