Vorrei settare una imageView tramite url esterno
io usavo
immagine1.setImageResource(percorso del file png);
con un'immagine dalla rete come posso fare??
Vorrei settare una imageView tramite url esterno
io usavo
immagine1.setImageResource(percorso del file png);
con un'immagine dalla rete come posso fare??
Questo funzionerà!codice:InputStream URLcontent = (InputStream) new URL(url).getContent(); Drawable image = Drawable.createFromStream(URLcontent, "your source link");
Ovviamente dopo sarà immagine1.setImageDrawable(image);
Stai attento che comunque è un operazione che richiede il collegamento a internet quindi ti servirà il relativo permesso.
In ogni caso dai uno sguardo a questo post: http://stackoverflow.com/questions/6...url-in-android
Ultima modifica di fedestylah; 12-12-12 alle 12:24
jxay (12-12-12)
ciao e grazie mille per la risposta.
Riusciresti a fare un piccolo esempio dove alla pressione di un tasto si setta una ImageView con un'immagine presa dalla rete (Url)
Faresti un grosso favore a me e a tutta la comunità italiana, visto che in italiano non si trova uno straccio di guida.
Grazie mille
Aggiungere al manifest:
codice:<uses-permission android:name="android.permission.INTERNET" />
Nell'onCreate:
codice:button1.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { String url = "urltuaimmagine"; ImageView imageView = (ImageView)findViewById(R.id.imageview1); Drawable drawable = creaImmagineDaUrl(url); imageView.setImageDrawable(drawable); } });
Dove il metodo "creaImmagineDaUrl" sarà così definito:
codice:private Drawable creaImmagineDaUrl(String url) { try { InputStream is = (InputStream) new URL(url).getContent(); Drawable d = Drawable.createFromStream(is, null); return d; }catch (Exception e) { System.out.println("Exc="+e); return null; } }
Se serve qualcosa di più specifico fammi sapere!
Ultima modifica di fedestylah; 12-12-12 alle 12:24
jxay (12-12-12)
scusa la mia assoluta lentezza nel capire!!!
Ho fatto così e non mi funziona!!!
mi va sempre in eccezione segnalandomi appunto Exc=android.os.Network.....
public class MainActivity extends Activity {
ImageView immagine1;
Button caricafoto;
private Drawable creaImmagineDaUrl(String url)
{
try
{
InputStream is = (InputStream) new URL(url).getContent();
Drawable d = Drawable.createFromStream(is, null);
return d;
}catch (Exception e) {
System.out.println("Exc="+e);
return null;
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
caricafoto = (Button)findViewById(R.id.button1);
immagine1 = (ImageView)findViewById(R.id.imageView1);
caricafoto.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
String url = "http://www.carnivalofvenice.com/wp-content/uploads/2012/07/Samantha-Morton-Foto-Sarah-Dunn.jpg";
Drawable drawable = creaImmagineDaUrl(url);
immagine1.setImageDrawable(drawable);
}
});
}
perchè non mi funziona?
colpa del Mainfest??come va inserito? va bene da qualsiasi parte?
Ultima modifica di jxay; 12-12-12 alle 15:15
Il problema è sul fatto che il download dell'immagine andrebbe fatta in un task Asyncrono, errore mio non avertelo detto. Ti preparo un esempio!
jxay (12-12-12)
Per me te 6 come un Dio onnipotente.
Grazie grazie grazie.
Il fatto che sto da qualche mese (3) cercando di capire qualcosina, quindi sono partito dal linguaggio java, usando le incredibili e infinite guide che ci sono in giro per la rete, creando piccoli programmi usando le classe ecc, per poi passare, assolutamente prematuro a java+android, ma qui di guide sopratutto in italiano ce ne sono ben poche e molto confuse...
Quindi grazie ancora!!!
Ora cercherò di studiare e capire bene le tue "scritture"
Ovviamente io ora oso chiederti un esempio simile con del testo preso dal database di un sito
(ovviamente sito proprietario)
Inviato dal mio LT26i XperiaS
[URL=http://www.Evebo.it[/URL]
La cosa si complica abbastanza perchè devi predisporre un web service che ti fornisce i dati desiderati in un formato leggibile da Android,il più utilizzato è JSON.
Una volta ricevuta la risposta in JSON dovrai "parsarla" per leggere i dati che ti interessano.
L'ho fatta molto semplice, appena trovo del tempo, magari, faccio un esempio più concreto!
jxay (13-12-12)