Android Open Source - garageoPIner-androidApp Expandable List Adapter






From Project

Back to project page garageoPIner-androidApp.

License

The source code is released under:

Apache License

If you think the Android project garageoPIner-androidApp listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.wirthual.garageopiner.utils;
/*  ww  w.j a  va  2  s .  c  o m*/
import java.util.HashMap;
import java.util.Map;

import android.app.Activity;
import android.app.TimePickerDialog;
import android.content.Context;
import android.graphics.Typeface;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseExpandableListAdapter;
import android.widget.Switch;
import android.widget.TextView;
import android.widget.TimePicker;

import com.wirthual.garageopiner.R;

public class ExpandableListAdapter extends BaseExpandableListAdapter implements android.view.View.OnClickListener {

  private Activity context;
    private Map<String, String[]> week;
    String[] days;

 
    public ExpandableListAdapter(Activity context) {
        this.context = context; 
        week = new HashMap<String, String[]>();
        
        this.initMap();
        
    }
 
    public Object getChild(int groupPosition, int childPosition) {
        return week.get("Montag")[childPosition];
    }
 
    public long getChildId(int groupPosition, int childPosition) {
        return childPosition;
    }
     
     
    public View getChildView(final int groupPosition, final int childPosition,
            boolean isLastChild, View convertView, ViewGroup parent) {
        final String time = (String) getChild(groupPosition, childPosition);
        LayoutInflater inflater = context.getLayoutInflater();
         
        if (convertView == null) {
            convertView = inflater.inflate(com.wirthual.garageopiner.R.layout.expandlist_child, null);
        }
        
        String text;
        TextView hinoderweg = (TextView)convertView.findViewById(R.id.weg);
        if(childPosition == 0){
          text = context.getResources().getString(R.string.weg);
        }else{
          text = context.getResources().getString(R.string.hin);
        }
        hinoderweg.setText(text);
         
        TextView timeweg = (TextView) convertView.findViewById(com.wirthual.garageopiner.R.id.time);
        TextView timehin = (TextView) convertView.findViewById(com.wirthual.garageopiner.R.id.time2);
        timeweg.setText("08:00");
        timehin.setText("16:00");
        timeweg.setOnClickListener(this);
        timehin.setOnClickListener(this);
        
        Switch enable = (Switch) convertView.findViewById(com.wirthual.garageopiner.R.id.active_switch);
        

        return convertView;
    }
 
    public int getChildrenCount(int groupPosition) {
        return 2;
    }
 
    public Object getGroup(int groupPosition) {
        return week.get(groupPosition);
    }
 
    public int getGroupCount() {
        return week.size();
    }
 
    public long getGroupId(int groupPosition) {
        return groupPosition;
    }
 
    public View getGroupView(int groupPosition, boolean isExpanded,
            View convertView, ViewGroup parent) {
        String day = days[groupPosition];
        if (convertView == null) {
            LayoutInflater infalInflater = (LayoutInflater) context
                    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            convertView = infalInflater.inflate(com.wirthual.garageopiner.R.layout.expandlist_parent,
                    null);
        }
        TextView item = (TextView) convertView.findViewById(com.wirthual.garageopiner.R.id.parent_header);
        item.setTypeface(null, Typeface.BOLD);
        item.setText(day);
        return convertView;
    }
 
    public boolean hasStableIds() {
        return true;
    }
 
    public boolean isChildSelectable(int groupPosition, int childPosition) {
        return true;
    }
    
    private void initMap(){
      days = context.getResources().getStringArray(com.wirthual.garageopiner.R.array.days);
      String[] time = {"0.00","0.00"};
      for (int i = 0; i < 7; i++) {
      week.put(days[i],time);
    }
      
    }

  @Override
  public void onClick(final View v) {
    TimePickerDialog tpd = new TimePickerDialog(context,
            new TimePickerDialog.OnTimeSetListener() {
     
                @Override
                public void onTimeSet(TimePicker view, int hourOfDay,
                        int minute) {
                      ((TextView)v).setText(String.format("%02d",hourOfDay) + ":" + String.format("%02d",minute));
                }
            }, 8, 0, true);
    tpd.show();

     
  }


  
}




Java Source Code List

com.wirthual.garageopiner.activities.MainActivity.java
com.wirthual.garageopiner.activities.SettingsActivity.java
com.wirthual.garageopiner.activities.TimeTableActivity.java
com.wirthual.garageopiner.communication.CommunicationService.java
com.wirthual.garageopiner.communication.DisplayToast.java
com.wirthual.garageopiner.communication.GarageoPInerHTTPClient.java
com.wirthual.garageopiner.fragments.MainFragment.java
com.wirthual.garageopiner.fragments.TimeTableFragment.java
com.wirthual.garageopiner.utils.ExpandableListAdapter.java
com.wirthual.garageopiner.utils.MyTimeTriggerWidgetProvider.java
com.wirthual.garageopiner.utils.MyTriggerWidgetProvider.java
com.wirthual.garageopiner.utils.NotificationUpdateRunnable.java
com.wirthual.garageopiner.utils.WifiChangedReceiver.java