user3310291
user3310291

Reputation:

adapter in android do not return string value

I want to set ArrayAdapter to ListView, but getting com.example.androidsdk.ListItem@43534e65, below is code

    public class ListItem implements Serializable {
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    @SerializedName("dt")
    private Long dateTime;
    @SerializedName("temp")
    private Temperature temperature;
    private Double pressure;
    private Integer humidity;
    private Weather inWeather;

    private Double speed;

    @SerializedName("deg")
    private Integer degree;
    private Integer clouds;

    public Long getDateTime() {
        return dateTime;
    }

    public void setDateTime(Long dateTime) {
        this.dateTime = dateTime;
    }

    public Temperature getTemperature() {
        return temperature;
    }

    public void setTemperature(Temperature temperature) {
        this.temperature = temperature;
    }

    public Double getPressure() {
        return pressure;
    }

    public void setPressure(Double pressure) {
        this.pressure = pressure;
    }

    public Integer getHumidity() {
        return humidity;
    }

    public void setHumidity(Integer humidity) {
        this.humidity = humidity;
    }

    /**
     * @return the inWeather
     */
    public Weather getInWeather() {
        return inWeather;
    }

    /**
     * @param inWeather the inWeather to set
     */
    public void setInWeather(Weather inWeather) {
        this.inWeather = inWeather;
    }


    public List<Weather> getWeather() {
        return weather;
    }

    public void setWeather(List<Weather> weather) {
        this.weather = weather;
    }

    public Double getSpeed() {
        return speed;
    }

    public void setSpeed(Double speed) {
        this.speed = speed;
    }

    public Integer getDegree() {
        return degree;
    }

    public void setDegree(Integer degree) {
        this.degree = degree;
    }

    public Integer getClouds() {
        return clouds;
    }

    public void setClouds(Integer clouds) {
        this.clouds = clouds;
    }

and

public List<ListItem> getList() {
    return list;
}

public void setList(List<ListItem> list) {
    this.list = list;
}

and the setting as:

list = result.getList();
adapter = new ArrayAdapter<WeatherForecastInfo.ListItem>(DemoActivity.this, android.R.layout.simple_list_item_1, list);
listView.setAdapter(adapter);

how to get String value?

Upvotes: 0

Views: 145

Answers (1)

Szymon
Szymon

Reputation: 43023

The easiest way for you (without using a custom adapter) will be to override toString() method in ListItem class. What is currently displayed is the default implementation of this method from the Object class.

@Override
public String toString() {
    return "what is needed"; // replace that with what you want to be displayed
}

Upvotes: 1

Related Questions