Autore Topic: Dialog non si chiude dopo aver cliccato su un elemento (  (Letto 445 volte)

Offline gepeppe

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    nexus one
  • Sistema operativo:
    ubuntu
Dialog non si chiude dopo aver cliccato su un elemento (
« il: 21 Febbraio 2012, 13:44:10 CET »
0
Salve a tutti. Nella mia applicazione ho realizzato una lista "history" che salva tutto ciò che l'utente cerca. Poi premendo il relativo menu "history", mi mostra un dialog con la lista, e se premo qualcosa sulla lista mi mostra il contenuto.

Usando solo onCreateDialog, ogni volta successiva che richiamavo il dialog della history, non mi veniva aggiornato con i nuovi elementi (però quando cliccavo su qualcuno di essi, il dialog spariva e vedevo il contenuto)...
Cosi ho usato onPrepareDialog, in cui sostanzialmente ho messo lo stesso codice inserito in onCreateDialog che creava il dialog...Infatti la lista, ogni volta che clicco su history per mostrare il dialog è effettivamente aggiornata, ma purtroppo se clicco su una voce il dialog non scompare (anche se sotto carica il contenuto correttamente)...perchè?

Vi allego il codice della onPrepareDialog, Grazie

Codice (Java): [Seleziona]
protected void onPrepareDialog(int dialogID, Dialog d) {               
                switch (dialogID) {
                case Constants.HISTORY_ITEMS_DIALOG_ID:
                        removeDialog(Constants.HISTORY_ITEMS_DIALOG_ID);

                        d.setTitle("titolo nuovo");
                        d.setContentView(R.layout.dialog_listview);
                       
                        ListView histListView = (ListView)d.findViewById(R.id.list);
                       
                        //Load an ArrayAdapter string with all history items
                        ArrayAdapter<String> histTitlesAdapter = new ArrayAdapter<String>(
                                                               this, R.layout.dialog_simple_list_item, historyList.getAllHistory());
                       
                        histListView.setAdapter(histTitlesAdapter);
                        histListView.setOnItemClickListener(new OnItemClickListener() {

                                @Override
                                public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
                                        //chiudi il dialog (ma in realtà non lo chiude!!)
                                        removeDialog(Constants.HISTORY_ITEMS_DIALOG_ID);

                                        //ricarica correttamente la pagina sottostante con ciò che ho cliccato!!!!
                                        mWebView.loadUrl(historyList.get(arg2).getUrl());
                                }
                        });
                       
                        LinearLayout.LayoutParams histLayParms = new LinearLayout.LayoutParams(
                                        LinearLayout.LayoutParams.FILL_PARENT,
                                        LinearLayout.LayoutParams.FILL_PARENT);
                        d.setContentView(histListView, histLayParms);
                        break;
                 }
}

Offline gepeppe

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    nexus one
  • Sistema operativo:
    ubuntu
Re:Dialog non si chiude dopo aver cliccato su un elemento (
« Risposta #1 il: 21 Febbraio 2012, 14:20:46 CET »
0
dovevo solo eliminare removeDialog(Constants.HISTORY_ITEMS_DIALOG_ID);  risolto scusate :D