Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400

    [Android\Eclipse] Immagine remnota

    Ciao.

    Non capisco perchè questa classe java non riesce a visualizzare l'immagine (esempio) remota http://www.myhosting.com/images/pic.png

    Non ho errori nella console di Eclipse, visualizzo tutte le variabili splittate correttamente ma l'immagine non viene caricata nel file xml associato alla classe java, perchè?
    codice:
    import android.annotation.SuppressLint;import android.app.Activity;
    
    
    import org.ksoap2.SoapEnvelope;
    import org.ksoap2.serialization.SoapObject;
    import org.ksoap2.serialization.SoapPrimitive;
    import org.ksoap2.serialization.SoapSerializationEnvelope;
    import org.ksoap2.transport.HttpTransportSE;
    
    
    import com.loopj.android.image.SmartImageView;
    
    
    import android.os.Bundle;
    import android.os.StrictMode;
    import android.text.Html;
    import android.text.method.LinkMovementMethod;
    import android.widget.TextView;
    
    
    
    
    public class news extends Activity {
    
    
        private static final String SOAP_ACTION = "http://...";
        private static final String OPERATION_NAME = "...";
        private static final String WSDL_TARGET_NAMESPACE = "http://...";
        private static final String SOAP_ADDRESS = "http://...";
    
    
        @SuppressLint("NewApi")
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_news);
            
            StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder()
                    .permitAll().build();
            StrictMode.setThreadPolicy(policy);
    
    
            SmartImageView profileImage = (SmartImageView) findViewById(R.id.profileImage); 
            
            TextView textView = new TextView(this);
            setContentView(textView);
            
            SoapObject request = new SoapObject(WSDL_TARGET_NAMESPACE,
                    OPERATION_NAME);
    
    
            SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
                    SoapEnvelope.VER11);
    
    
            envelope.dotNet = true;
            envelope.implicitTypes = false;
            envelope.setOutputSoapObject(request);
    
    
            HttpTransportSE httpTransport = new HttpTransportSE(SOAP_ADDRESS);
            httpTransport.debug = true;
            envelope.setOutputSoapObject(request);
            
            try {
    
    
                httpTransport.call(SOAP_ACTION, envelope);
    
    
                SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
    
    
                String phrase = response.toString();
                String delims = "[\n]";
                String[] tokens = phrase.split(delims);
    
    
                for (int i = 0; i < tokens.length; i++)                
                    textView.append(Html.fromHtml(tokens[i] + "\n"));
                textView.setMovementMethod(LinkMovementMethod.getInstance());
                            
                profileImage.setImageUrl("http://www.myhosting.com/images/pic.png");
                
    
    
            } catch (Exception exception) {
                textView.setText(exception.toString());
            }
        }
    }

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da wegawhite Visualizza il messaggio
    A me risulta che questo url dà il HTTP error 404 (Not found).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Quote Originariamente inviata da andbin Visualizza il messaggio
    A me risulta che questo url dà il HTTP error 404 (Not found).
    E' un link di esempio .... non esiste ... ma nella classe java ho inserito l'url corretto ...

    Il problema è su questa riga:
    codice:
    setContentView(textView);
    Se la escludo vedo l'immagine remota ... ma non vedo più le variabili splittate, se la includo non vedo l'immagine remota ... ma vedo tutte le variabili splittate ...
    Ultima modifica di wegawhite; 07-04-2014 a 23:27

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da wegawhite Visualizza il messaggio
    E' un link di esempio .... non esiste ...
    Ok.

    Quote Originariamente inviata da wegawhite Visualizza il messaggio
    Il problema è su questa riga:
    codice:
    setContentView(textView);
    Me ne intendo poco di Android (ci ho "giocherellato" solo in passato) ma se ben ricordo, setContentView imposta ("rimpiazza") l'intero contenuto della activity.
    Il primo setContentView è ok perché imposti un layout, da risorsa, che può contenere appunto il tuo R.id.profileImage più qualunque altro componente. Il secondo toglie tutto e imposta solo il textView.
    Quindi il text view deve essere nel tuo layout e poi lo devi semplicemente trovare (findViewById) e configurare.
    Detto in altro modo: o non hai ancora compreso come funziona il layout in Android ..... o non ho capito io cosa vuoi fare con quel TextView.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Ok.


    Me ne intendo poco di Android (ci ho "giocherellato" solo in passato) ma se ben ricordo, setContentView imposta ("rimpiazza") l'intero contenuto della activity.
    Il primo setContentView è ok perché imposti un layout, da risorsa, che può contenere appunto il tuo R.id.profileImage più qualunque altro componente. Il secondo toglie tutto e imposta solo il textView.
    Quindi il text view deve essere nel tuo layout e poi lo devi semplicemente trovare (findViewById) e configurare.
    Detto in altro modo: o non hai ancora compreso come funziona il layout in Android ..... o non ho capito io cosa vuoi fare con quel TextView.
    Grazie, hai capito perfettamente cosa devo (dovrei) fare.

    Ho necessità nel layout di Android di piazzare l'immagine in profileImage ed il testo ad essa associato in un textView.

    L'immagine arriva all'applicazione da remoto tramite un .NET web service insieme al testo ad essa associato.

    Nella stringa recuperata dal .NET web service eseguo uno Split ed assegno al layout di Android ciascuna variabile splittata dalla stringa iniziale ... in teoria, ma in pratica?

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da wegawhite Visualizza il messaggio
    assegno al layout di Android ciascuna variabile splittata dalla stringa iniziale ... in teoria, ma in pratica?
    Il succo però è: hai N stringhe e vuoi avere più TextView? O forse ti serve un componente "lista" come ListView?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  7. #7
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Il succo però è: hai N stringhe e vuoi avere più TextView? O forse ti serve un componente "lista" come ListView?
    Grazie.

    La stringa che viene elaborata dal web service ed inviata all'applicazione è composta da:
    1. Link all'immagine remota;
    2. Titolo dell'immagine remota;
    3. Data dell'immagine remota.


    Al momento tramite
    codice:
    setContentView(textView);
    Visualizzo tutto nel layout ma al posto dell'immagine vedo il link all'immagine. Avrei bisogno di vedere l'immagine per questo avevo pensato di splittare la stringa e con ciascun valore splittato popolare il layout di Android. Con ListView si risolve?

  8. #8
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da wegawhite Visualizza il messaggio
    La stringa che viene elaborata dal web service ed inviata all'applicazione è composta da:
    1. Link all'immagine remota;
    2. Titolo dell'immagine remota;
    3. Data dell'immagine remota.
    Ok, avevo capito male io .... non credo ti serva ListView perché non hai N record di informazione, se ora ho compreso bene. Hai solo 1 "record" di informazione composto da 3 dati: url, titolo e data.

    Detto genericamente (ti ripeto che non sono pratico su Android), crea una risorsa di layout in cui sono disposti: una immagine (quel componente SmartImageView che però non conosco e non so dirti altro), un componente di testo per il titolo (TextView) e se vuoi anche la data, un altro TextView per essa.

    Quindi ricevi la stringa, separi i dati come sicuramente sai tu, cerchi i riferimenti ai componenti (findViewById) e assegni url, testo o altro che serve ai componenti.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  9. #9
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Ok, avevo capito male io .... non credo ti serva ListView perché non hai N record di informazione, se ora ho compreso bene. Hai solo 1 "record" di informazione composto da 3 dati: url, titolo e data.
    No, no... hai capito benissimo infatti non ho solo un record ne ho "N"; ed infatti questo è adesso il problema.

    Infatti ho seguito le tue indicazioni e riesco correttamente a vedere l'immagine remota, il titolo e la data... ma visualizzo solo il primo dei record ... ecco il codice:
    codice:
                httpTransport.call(SOAP_ACTION, envelope);
    
                SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
    
    
                String phrase = response.toString();
                Log.i("MyFirstString", phrase.toString());
    
    
                String editedResponse = phrase.replaceAll("<br />", "\n");
                Log.i("MyApp", editedResponse);
                
                String[] tokens = editedResponse.split("\n");
                Log.i("myApp0", tokens[0].toString());            
                Log.i("myApp1", tokens[1].toString());
                Log.i("myApp2", tokens[2].toString());
    
    
                profileImage.setImageUrl(tokens[0].toString());
                textData.setText(tokens[1].toString());
                textTitle.setText(Html.fromHtml(tokens[2].toString()));
                textTitle.setMovementMethod(LinkMovementMethod.getInstance());

  10. #10
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da wegawhite Visualizza il messaggio
    No, no... hai capito benissimo infatti non ho solo un record ne ho "N";
    Ah ok!

    Quote Originariamente inviata da wegawhite Visualizza il messaggio
    ma visualizzo solo il primo dei record
    Per quanto riguarda l' "esperienza" utente ... non è che esiste un unico modo ... ce ne sono svariati.
    Puoi:
    1) mostrare nella pagina un solo record, immagine/testo (e data) e offrire due pulsanti avanti/indietro per muoversi tra gli N record.
    2) mostrare una lista (ecco qui l'uso di ListView) con immagini piccole di "anteprima" e selezionando un elemento si passa alla pagina di dettaglio di un record (come punto 1).
    3) mostrare una griglia di immagini piccole magari scrollabile, idem resto come punto 2.

    Insomma c'è solo l'imbarazzo della scelta ...
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.