Monday, 8 December 2014

Android imageview with image name from xml , Listview



I am using the folowing script to populate a listvieuw with some items , the listed items now all have the same photo because of the(code below)



<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_below="@+id/textViewName"
android:layout_height="180dp"
android:scaleType="fitXY"
android:src="@drawable/kleine_knip" />


In the xml I have specified a table for the name of the foto. e.g.



<ListItem
subcat="1"
id="1"
naam="Playa Kalki"
adres="Strand"
pinpoint="http://ift.tt/1zGdPUp"
toelating="Vrije toegang"
wifi="Wifi-Nee"
douche="Douch-Nee"
bar="Bar-Ja"
snack="Snack-Nee"
activiteit="Activiteiten-Geen"
beschrijving="Vrij"

image=""kleine_knip""/>


image=""kleine_knip"" is the image name , there are a few more images in the drawable folder. and I want to be able to let the photo chance according to the photo name in the xml.


Hope someone can help me out , im close but cant figure it out .



<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://ift.tt/nIICcg"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical"
android:linksClickable="true" >

<TextView
android:id="@+id/textViewName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textStyle="bold"
android:textSize="28sp"
android:layout_marginBottom="1dp" />

<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_below="@+id/textViewName"
android:layout_height="180dp"
android:scaleType="fitXY"
android:src="@drawable/kleine_knip" />

<TextView
android:id="@+id/textToelating"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />


<TextView
android:id="@+id/textWifi"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />

<TextView
android:id="@+id/textDouche"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

<TextView
android:id="@+id/textBar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

<TextView
android:id="@+id/textSnack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

<TextView
android:id="@+id/textActiviteit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

<TextView
android:id="@+id/textViewDescription"
android:layout_width="283dp"
android:layout_height="wrap_content"
android:layout_margin="10dip"
android:layout_weight="0.89"
android:text="Medium Text"
android:textAppearance="?android:attr/textAppearanceMedium" />



<Button
android:layout_height="wrap_content"
android:clickable="true"
android:autoLink="web"
android:cursorVisible="true"
android:layout_width="match_parent"
android:id="@+id/button_so"
android:text="Navigeer naar"
android:linksClickable="true"
android:onClick="Nav_to"></Button>


</LinearLayout>
</ScrollView>




package com.example.android.effectivenavigation.sub;

import android.R.id;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.widget.TextView;
import android.app.Activity;
import android.content.Intent;
import android.graphics.BitmapFactory;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.view.View;
import android.widget.ImageView;

import com.example.android.effectivenavigation.R;

public class DetailActivity_Zee_Strand extends FragmentActivity{


@Override
protected void onCreate(Bundle arg0) {
super.onCreate(arg0);
setContentView(R.layout.detail_layout_strand);

setData();

}

private void setData() {
if (ListActivity_Zee.selectedItem == null) {
return;
}
ListItem item = ListActivity_Zee.selectedItem;

((TextView)findViewById(R.id.textViewName)).setText(item.getNaam());

((TextView)findViewById(R.id.textToelating)).setText(item.getToelating());
((TextView)findViewById(R.id.textWifi)).setText(item.getWifi());
((TextView)findViewById(R.id.textDouche)).setText(item.getDouche());
((TextView)findViewById(R.id.textBar)).setText(item.getBar());
((TextView)findViewById(R.id.textSnack)).setText(item.getSnack());
(TextView)findViewById(R.id.textActiviteit)).setText(item.getActiviteit());
((TextView)findViewById(R.id.textViewDescription)).setText(item.getBeschrijving());


String source = "drawable/";
String image = ListActivity_Zee.selectedItem.image;
String uri = source + image;





}


public void Nav_to (View view) {

String linkz = ListActivity_Zee.selectedItem.pinpoint;
goToUrl ( linkz);
}

private void goToUrl (String url) {
Uri uriUrl = Uri.parse(url);
Intent launchBrowser = new Intent(Intent.ACTION_VIEW, uriUrl);
startActivity(launchBrowser);
}
}



package com.example.android.effectivenavigation.sub;

public class ListItem {
String naam;
String subcat;
String id;
String adres;
String pinpoint;
String rout;
String toelating;
String wifi;
String douche;
String bar;
String snack;
String activiteit;
String beschrijving;
String image;

public String getNaam() {
return naam;
}
public void setNaam(String naam) {
this.naam = naam;
}
public String getSubcat() {
return subcat;
}
public void setSubcat(String subcat) {
this.subcat = subcat;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getAdres() {
return adres;
}
public void setAdres(String adres) {
this.adres = adres;
}
public String getPinpoint() {
return pinpoint;
}
public void setPinpoint(String pinpoint) {
this.pinpoint = pinpoint;

}

public String getToelating() {
return toelating;
}
public void setToelating(String toelating) {
this.toelating = toelating;
}
public String getWifi() {
return wifi;
}
public void setWifi(String wifi) {
this.wifi = wifi;
}
public String getDouche() {
return douche;
}
public void setDouche(String douche) {
this.douche = douche;
}

public String getBar() {
return bar;
}
public void setBar(String bar) {
this.bar = bar;
}
public String getSnack() {
return snack;
}
public void setSnack(String snack) {
this.snack = snack;
}
public String getActiviteit() {
return activiteit;
}
public void setActiviteit(String activiteit) {
this.activiteit = activiteit;
}

public String getBeschrijving() {
return beschrijving;
}
public void setBeschrijving(String beschrijving) {
this.beschrijving = beschrijving;
}
public String getImage() {
return image;
}
public void setImage(String image) {
this.image = image;
}
}

No comments:

Post a Comment