    public void onCreate( Bundle icicle ) {
        super.onCreate(icicle);
        setContentView(R.layout.osmcategorytags);
        Bundle extras = getIntent().getExtras();
        category = extras.getString(Constants.OSM_CATEGORY_KEY);
        final String[] itemsForCategory = OsmTagsManager.getInstance().getItemsForCategory(this, category);
        GridView buttonGridView = (GridView) findViewById(R.id.osmtagsgridview);
        ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, R.layout.osm_button_layout, itemsForCategory){
            public View getView( final int position, View cView, ViewGroup parent ) {
                View inflate = LayoutInflater.from(OsmCategoryActivity.this).inflate(R.layout.osm_button_layout, parent, false);
                final TextView text = (TextView) inflate.findViewById(R.id.osm_item_text);
                final String tagName = itemsForCategory[position];
                text.setText(tagName.replaceAll("\\_", " ")); 
                Drawable icon = OsmImageCache.getInstance(OsmCategoryActivity.this).getImageForTag(tagName, category);
                final ImageButton osmButton = (ImageButton) inflate.findViewById(R.id.osm_item_image);
                osmButton.setImageDrawable(icon);
                osmButton.setOnClickListener(new Button.OnClickListener(){
                    public void onClick( View v ) {
                        Intent osmCategoryIntent = new Intent(Constants.OSMFORMACTIVITY);
                        osmCategoryIntent.putExtra(Constants.OSM_CATEGORY_KEY, category);
                        osmCategoryIntent.putExtra(Constants.OSM_TAG_KEY, tagName);
                        startActivity(osmCategoryIntent);
                    }
                });
                return inflate;
            }
        };
        buttonGridView.setAdapter(arrayAdapter);
    }

    public void onCreate( Bundle icicle ) {
        super.onCreate(icicle);
        setContentView(R.layout.osmcategorytags);
        Bundle extras = getIntent().getExtras();
        category = extras.getString(Constants.OSM_CATEGORY_KEY);
        final String[] itemsForCategory = OsmTagsManager.getInstance().getItemsForCategory(this, category);
        GridView buttonGridView = (GridView) findViewById(R.id.osmtagsgridview);
        ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, R.layout.osm_button_layout, itemsForCategory){
            public View getView( final int position, View cView, ViewGroup parent ) {
                View inflate = LayoutInflater.from(OsmCategoryActivity.this).inflate(R.layout.osm_button_layout, parent, false);
                final TextView text = (TextView) inflate.findViewById(R.id.osm_item_text);
                final String tagName = itemsForCategory[position];
                text.setText(tagName.replaceAll("_", " ")); 
                Drawable icon = OsmImageCache.getInstance(OsmCategoryActivity.this).getImageForTag(tagName, category);
                final ImageButton osmButton = (ImageButton) inflate.findViewById(R.id.osm_item_image);
                osmButton.setImageDrawable(icon);
                osmButton.setOnClickListener(new Button.OnClickListener(){
                    public void onClick( View v ) {
                        Intent osmCategoryIntent = new Intent(Constants.OSMFORMACTIVITY);
                        osmCategoryIntent.putExtra(Constants.OSM_CATEGORY_KEY, category);
                        osmCategoryIntent.putExtra(Constants.OSM_TAG_KEY, tagName);
                        startActivity(osmCategoryIntent);
                    }
                });
                return inflate;
            }
        };
        buttonGridView.setAdapter(arrayAdapter);
    }
