Код: Выделить всё
public class plan extends Activity {
Calendar calendar;
SimpleDateFormat format1;
ListView lv1;
List<Item> day;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.plan);
format1 = new SimpleDateFormat("E dd.MM");
calendar = Calendar.getInstance();
day = new ArrayList<Item>();
for( int i = 0; i < 365; ++i ){
String label = " " + format1.format(calendar.getTime()) + " " + (i + 1) + " " + getResources().getString(R.string.day);
day.add(new Item(label));
calendar.add(Calendar.DAY_OF_YEAR, 1);
}
final CustomAdapter adapter = new CustomAdapter(this,R.layout.button,day);
lv1 = (ListView) findViewById(R.id.listView);
lv1.setAdapter(adapter);
lv1.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
Item item = day.get(i);
item.setOpened(true);
ShowHTML("file:///android_asset/" + (l + 1) + ".htm", view);
adapter.notifyDataSetChanged();
}
});
}
public void ShowHTML(String AFilePath, View view) {
Intent intent = new Intent(view.getContext(), citania.class);
intent.setData(Uri.parse(AFilePath));
startActivity(intent);
}
class Item {
String label;
boolean wasOpened;
Item(String label) {
this.label = label;
wasOpened = false;
}
void setOpened(boolean opened) {
wasOpened = true;
}
}
class CustomAdapter extends ArrayAdapter<Item> {
public CustomAdapter(Context context, int textViewResourceId){
super(context,textViewResourceId);
}
public CustomAdapter(Context context, int textViewResouceId, List<Item> items){
super(context,textViewResouceId,items);
}
@Override
public View getView(int position, View convertView,ViewGroup parent){
View v = convertView;
if( v == null ){
LayoutInflater layoutInflater;
layoutInflater = LayoutInflater.from(getContext());
v = layoutInflater.inflate(R.layout.button,null);
}
Item item = getItem(position);
if( item != null ){
TextView buttonTextView = (TextView) v;
buttonTextView.setText(item.label);
buttonTextView.setTextColor(Color.WHITE);
if(item.wasOpened){
buttonTextView.setBackgroundResource(R.drawable.redcolor);
}else{
buttonTextView.setBackgroundResource(R.drawable.buttoncolor);
}
}
return v;
}
}
}