Autore Topic: dialog  (Letto 468 volte)

Offline kalacta269

  • Utente normale
  • ***
  • Post: 152
  • Respect: +14
    • Mostra profilo
  • Dispositivo Android:
    Asus Transformer pad tf300
  • Sistema operativo:
    windows7
dialog
« il: 08 Novembre 2011, 11:18:47 CET »
0
una domanda banale come faccio ad usare un custom dialog in una classe java non activity quindi priva di contesto§??

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:dialog
« Risposta #1 il: 08 Novembre 2011, 11:29:09 CET »
0
Un modo è passare il context dall'activity che la utilizza.
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline kalacta269

  • Utente normale
  • ***
  • Post: 152
  • Respect: +14
    • Mostra profilo
  • Dispositivo Android:
    Asus Transformer pad tf300
  • Sistema operativo:
    windows7
Re:dialog
« Risposta #2 il: 08 Novembre 2011, 11:31:46 CET »
0
e come posso passare questo context?? mi puoi aiutare?

Offline Luigi.Arena

  • Utente senior
  • ****
  • Post: 616
  • DACIA DUSTER 4X4 SUPER
  • Respect: +56
    • Mostra profilo
    • ArenaWebTest
  • Dispositivo Android:
    epad m009
  • Play Store ID:
    Luigi Arena
  • Sistema operativo:
    Windows 7
Re:dialog
« Risposta #3 il: 08 Novembre 2011, 12:19:55 CET »
0
Ciao,
1)Ti crei una classe che estende dialog ecco un esempio:
Ovviamente devi personalizzartela, io la uso così, ho inserito un parametro messaggio che mi serve per modificare il testo visualizzato nella dialog.
Ho implentato anche OnClickListener, ma magari a te non serve.
Codice: [Seleziona]
public class clsCustomDialog extends Dialog implements OnClickListener
{
        Button btnOk;
        TextView txtview;
        public clsCustomDialog(Context context,String messaggio)
        {
                super(context);
                // 'Window.FEATURE_NO_TITLE' - Used to hide the title */
                requestWindowFeature(Window.FEATURE_NO_TITLE);
                //Design the dialog in main.xml file */
                 setContentView(R.layout.alarm);
                 txtview=(TextView) findViewById(R.id.txtAlarm);
                 txtview.setText(messaggio);
                 btnOk = (Button) findViewById(R.id.btnOK);
                 btnOk.setOnClickListener(this);

        }
        public void onClick(View v)
        {
                //Listener click
                if (v == btnOk)
                {
                        dismiss();
                }
               
        }

       

}


2)Ti crei l'xml del dialog:
Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:background="@color/Black" android:orientation="vertical"
        android:layout_height="fill_parent" android:layout_width="wrap_content" android:gravity="center">
        <LinearLayout android:background="@color/White"
                android:orientation="horizontal" android:layout_height="wrap_content"
                android:layout_width="wrap_content" android:layout_margin="10dp">
                <ImageView android:id="@+id/imageView1"
                        android:layout_height="match_parent" android:layout_width="50dp"
                        android:src="@drawable/pericolo"></ImageView>

                <TextView android:id="@+id/txtAlarm" android:layout_height="wrap_content"
                        android:text="testo."
                        android:textAppearance="?android:attr/textAppearanceLarge"
                        android:layout_width="match_parent" android:layout_margin="5dp"
                        android:enabled="true" android:textColor="@color/CornflowerBlue"></TextView>

        </LinearLayout>
        <Button android:text="OK" android:layout_gravity="center"
                android:id="@+id/btnOK" android:layout_height="wrap_content"
                android:layout_width="match_parent" android:layout_margin="5dp"></Button>

</LinearLayout>

3)La richiami da dove vuoi:
Codice: [Seleziona]
/** Display Custom Dialog */
                        clsCustomDialog customizeDialog = new clsCustomDialog(this,"ecco il testo");
                        customizeDialog.show();
È stata trovata una soluzione al tuo problema?Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato .

Offline kalacta269

  • Utente normale
  • ***
  • Post: 152
  • Respect: +14
    • Mostra profilo
  • Dispositivo Android:
    Asus Transformer pad tf300
  • Sistema operativo:
    windows7
Re:dialog
« Risposta #4 il: 08 Novembre 2011, 12:54:19 CET »
0
ehi ciaooo grazie mille intanto ma il mio problema è un altro come faccio a passare in context dell'activity principale per usare il dialog in un altra classe non  activity diversa da quella dove l'ho creato??

Offline Luigi.Arena

  • Utente senior
  • ****
  • Post: 616
  • DACIA DUSTER 4X4 SUPER
  • Respect: +56
    • Mostra profilo
    • ArenaWebTest
  • Dispositivo Android:
    epad m009
  • Play Store ID:
    Luigi Arena
  • Sistema operativo:
    Windows 7
Re:dialog
« Risposta #5 il: 08 Novembre 2011, 13:39:34 CET »
0
Scusa, probabilmente sono io un pò stordito  o_O puoi fare un esempio pratico ?
È stata trovata una soluzione al tuo problema?Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato .

Offline teskio

  • Moderatore globale
  • Utente normale
  • *****
  • Post: 387
  • Respect: +118
    • Github
    • Google+
    • Mostra profilo
    • Skullab
  • Dispositivo Android:
    Cubot GT99 / SurfTab Ventos 10.1
  • Play Store ID:
    Skullab Software
  • Sistema operativo:
    windows 7 / ubuntu 12.04
Re:dialog
« Risposta #6 il: 08 Novembre 2011, 15:47:34 CET »
0
Codice (Java): [Seleziona]
public class MainActivity extends Activity{
   protected static MainActivity mainContext ;
   public void onCreate(Bundle b){
       super.onCreate(b);
       mainContext = this ;    
   }
}

da qualche altra parte, in qualche universo sperduto...

Codice (Java): [Seleziona]
new MyBeautifulDialog(MainActivity.mainContext,"hello universe !").show();