Autore Topic: Problema nel creare un CustomDialog  (Letto 173 volte)

Offline giupardeb

  • Utente junior
  • **
  • Post: 115
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Glaxy Note 4
Problema nel creare un CustomDialog
« il: 28 Luglio 2015, 17:57:50 CEST »
0
Buon pomeriggio a tutti ragazzi, ho un problema nella creazione di un Custom Dialog e nell'assegnare ad esso una gridView. ecco il codice necessario:

CustomGrid.java

Codice: [Seleziona]
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;

import java.util.ArrayList;

/**
 * Created by giuseppe on 28/07/15.
 */
public class CustomGrid extends BaseAdapter {
    private Context mContext;
    private ArrayList<String> text = new ArrayList<String>();

    //private final String[] text;
  //  private final int[] Imageid;

    public CustomGrid(Context c,ArrayList<String> text/*String[] text*//*int[] Imageid*/ ) {
        mContext = c;
       // this.Imageid = Imageid;
        this.text = text;
    }

    @Override
    public int getCount() {
        // TODO Auto-generated method stub

        return text.size();
    }

    @Override
    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        // TODO Auto-generated method stub
        View grid;
        LayoutInflater inflater = (LayoutInflater) mContext
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        if (convertView == null) {

            grid = new View(mContext);
            grid = inflater.inflate(R.layout.row_grid, null);
            TextView textView = (TextView) grid.findViewById(R.id.item_text);
            //ImageView imageView = (ImageView)grid.findViewById(R.id.grid_image);
            textView.setText(text.get(position));
            //imageView.setImageResource(Imageid[position]);
        } else {
            grid = (View) convertView;
        }

        return grid;
    }
}

row_grid.xml:
Codice: [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/item_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:textSize="15sp" >
    </TextView>

</LinearLayout>

dialog_layout.xml

Codice: [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <GridView
        android:id="@+id/gridView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/ratingBar"
        android:layout_centerHorizontal="true"
        android:numColumns="3" >
    </GridView>

    <RatingBar
        android:id="@+id/ratingBar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true" />



</RelativeLayout>

Infine un pezzo di codice che sta nella activity in cui dovrà avviarsi il Custom Dialog:

Codice: [Seleziona]
gridArray.add(MONUMENTI);
        gridArray.add(PANORAMI);
        gridArray.add(SELFIE);
        gridArray.add(NOCATEGORIA);
        gridArray.add(ADDCATEGORIA);

        CustomGrid adapter = new CustomGrid(CameraActivity.this, gridArray);
        grid.setAdapter(adapter);

mentre qui il codice per creare e visualizzare il custom dialog:

Codice: [Seleziona]
private void CreateDialog() {
                // TODO Auto-generated method stub

                Dialog dialog = new Dialog(mContext);
                dialog.setContentView(R.layout.dialog_layout);
                dialog.show();

        }

qual'è sarebbe il problema? Spero di essere stato chiaro, Buona serata a tutti :)