// Path: app/src/main/java/com/lauren/simplenews/beans/WeatherBean.java
// public class WeatherBean {
// 
//     private static final long serialVersionUID = 1L;
//     /**
//      * temperature
//      */
//     private String temperature;
//     /**
//      * weather
//      */
//     private String weather;
//     /**
//      * wind
//      */
//     private String wind;
//     /**
//      * week
//      */
//     private String week;
//     /**
//      * date
//      */
//     private String date;
// 
//     private int imageRes;
// 
//     public String getTemperature() {
//         return temperature;
//     }
// 
//     public void setTemperature(String temperature) {
//         this.temperature = temperature;
//     }
// 
//     public String getWeather() {
//         return weather;
//     }
// 
//     public void setWeather(String weather) {
//         this.weather = weather;
//     }
// 
//     public String getWind() {
//         return wind;
//     }
// 
//     public void setWind(String wind) {
//         this.wind = wind;
//     }
// 
//     public String getWeek() {
//         return week;
//     }
// 
//     public void setWeek(String week) {
//         this.week = week;
//     }
// 
//     public String getDate() {
//         return date;
//     }
// 
//     public void setDate(String date) {
//         this.date = date;
//     }
// 
//     public int getImageRes() {
//         return imageRes;
//     }
// 
//     public void setImageRes(int imageRes) {
//         this.imageRes = imageRes;
//     }
// }
// 
// Path: app/src/main/java/com/lauren/simplenews/weather/presenter/WeatherPresenter.java
// public interface WeatherPresenter {
// 
//     void loadWeatherData();
// 
// }
// 
// Path: app/src/main/java/com/lauren/simplenews/weather/presenter/WeatherPresenterImpl.java
// public class WeatherPresenterImpl implements WeatherPresenter, WeatherModelImpl.LoadWeatherListener {
// 
//     private WeatherView mWeatherView;
//     private WeatherModel mWeatherModel;
//     private Context mContext;
// 
//     public WeatherPresenterImpl(Context context, WeatherView weatherView) {
//         this.mContext = context;
//         this.mWeatherView = weatherView;
//         mWeatherModel = new WeatherModelImpl();
//     }
// 
//     @Override
//     public void loadWeatherData() {
//         mWeatherView.showProgress();
//         if(!ToolsUtil.isNetworkAvailable(mContext)) {
//             mWeatherView.hideProgress();
//             mWeatherView.showErrorToast("无网络连接");
//             return;
//         }
// 
//         WeatherModelImpl.LoadLocationListener listener = new WeatherModelImpl.LoadLocationListener() {
//             @Override
//             public void onSuccess(String cityName) {
//                 //定位成功，获取定位城市天气预报
//                 mWeatherView.setCity(cityName);
//                 mWeatherModel.loadWeatherData(cityName, WeatherPresenterImpl.this);
//             }
// 
//             @Override
//             public void onFailure(String msg, Exception e) {
// //                mWeatherView.showErrorToast("定位失败");
//                 mWeatherView.setCity("南京");
//                 mWeatherModel.loadWeatherData("南京", WeatherPresenterImpl.this);
//             }
//         };
//         //获取定位信息
//         mWeatherModel.loadLocation(mContext, listener);
//     }
// 
//     @Override
//     public void onSuccess(List<WeatherBean> list) {
//         if(list != null && list.size() > 0) {
//             WeatherBean todayWeather = list.remove(0);
//             mWeatherView.setToday(todayWeather.getDate());
//             mWeatherView.setTemperature(todayWeather.getTemperature());
//             mWeatherView.setWeather(todayWeather.getWeather());
//             mWeatherView.setWind(todayWeather.getWind());
//             mWeatherView.setWeatherImage(todayWeather.getImageRes());
//         }
//         mWeatherView.setWeatherData(list);
//         mWeatherView.hideProgress();
//         mWeatherView.showWeatherLayout();
//     }
// 
//     @Override
//     public void onFailure(String msg, Exception e) {
//         mWeatherView.hideProgress();
//         mWeatherView.showErrorToast("获取天气数据失败");
//     }
// 
// }
// 
// Path: app/src/main/java/com/lauren/simplenews/weather/view/WeatherView.java
// public interface WeatherView {
// 
//     void showProgress();
//     void hideProgress();
//     void showWeatherLayout();
// 
//     void setCity(String city);
//     void setToday(String data);
//     void setTemperature(String temperature);
//     void setWind(String wind);
//     void setWeather(String weather);
//     void setWeatherImage(int res);
//     void setWeatherData(List<WeatherBean> lists);
// 
//     void showErrorToast(String msg);
// 
// 
// }


import android.os.Bundle;
import android.support.design.widget.Snackbar;
import android.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.TextView;
import com.lauren.simplenews.R;
import com.lauren.simplenews.beans.WeatherBean;
import com.lauren.simplenews.weather.presenter.WeatherPresenter;
import com.lauren.simplenews.weather.presenter.WeatherPresenterImpl;
import com.lauren.simplenews.weather.view.WeatherView;
import java.util.ArrayList;
import java.util.List;
    public void setCity(String city) {
        mCityTV.setText(city);
    }

    @Override
    public void setToday(String data) {
        mTodayTV.setText(data);
    }

    @Override
    public void setTemperature(String temperature) {
        mTodayTemperatureTV.setText(temperature);
    }

    @Override
    public void setWind(String wind) {
        mTodayWindTV.setText(wind);
    }

    @Override
    public void setWeather(String weather) {
        mTodayWeatherTV.setText(weather);
    }

    @Override
    public void setWeatherImage(int res) {
        mTodayWeatherImage.setImageResource(res);
    }

    @Override
// Path: app/src/main/java/com/lauren/simplenews/beans/WeatherBean.java
// public class WeatherBean {
// 
//     private static final long serialVersionUID = 1L;
//     /**
//      * temperature
//      */
//     private String temperature;
//     /**
//      * weather
//      */
//     private String weather;
//     /**
//      * wind
//      */
//     private String wind;
//     /**
//      * week
//      */
//     private String week;
//     /**
//      * date
//      */
//     private String date;
// 
//     private int imageRes;
// 
//     public String getTemperature() {
//         return temperature;
//     }
// 
//     public void setTemperature(String temperature) {
//         this.temperature = temperature;
//     }
// 
//     public String getWeather() {
//         return weather;
//     }
// 
//     public void setWeather(String weather) {
//         this.weather = weather;
//     }
// 
//     public String getWind() {
//         return wind;
//     }
// 
//     public void setWind(String wind) {
//         this.wind = wind;
//     }
// 
//     public String getWeek() {
//         return week;
//     }
// 
//     public void setWeek(String week) {
//         this.week = week;
//     }
// 
//     public String getDate() {
//         return date;
//     }
// 
//     public void setDate(String date) {
//         this.date = date;
//     }
// 
//     public int getImageRes() {
//         return imageRes;
//     }
// 
//     public void setImageRes(int imageRes) {
//         this.imageRes = imageRes;
//     }
// }
// 
// Path: app/src/main/java/com/lauren/simplenews/weather/presenter/WeatherPresenter.java
// public interface WeatherPresenter {
// 
//     void loadWeatherData();
// 
// }
// 
// Path: app/src/main/java/com/lauren/simplenews/weather/presenter/WeatherPresenterImpl.java
// public class WeatherPresenterImpl implements WeatherPresenter, WeatherModelImpl.LoadWeatherListener {
// 
//     private WeatherView mWeatherView;
//     private WeatherModel mWeatherModel;
//     private Context mContext;
// 
//     public WeatherPresenterImpl(Context context, WeatherView weatherView) {
//         this.mContext = context;
//         this.mWeatherView = weatherView;
//         mWeatherModel = new WeatherModelImpl();
//     }
// 
//     @Override
//     public void loadWeatherData() {
//         mWeatherView.showProgress();
//         if(!ToolsUtil.isNetworkAvailable(mContext)) {
//             mWeatherView.hideProgress();
//             mWeatherView.showErrorToast("无网络连接");
//             return;
//         }
// 
//         WeatherModelImpl.LoadLocationListener listener = new WeatherModelImpl.LoadLocationListener() {
//             @Override
//             public void onSuccess(String cityName) {
//                 //定位成功，获取定位城市天气预报
//                 mWeatherView.setCity(cityName);
//                 mWeatherModel.loadWeatherData(cityName, WeatherPresenterImpl.this);
//             }
// 
//             @Override
//             public void onFailure(String msg, Exception e) {
// //                mWeatherView.showErrorToast("定位失败");
//                 mWeatherView.setCity("南京");
//                 mWeatherModel.loadWeatherData("南京", WeatherPresenterImpl.this);
//             }
//         };
//         //获取定位信息
//         mWeatherModel.loadLocation(mContext, listener);
//     }
// 
//     @Override
//     public void onSuccess(List<WeatherBean> list) {
//         if(list != null && list.size() > 0) {
//             WeatherBean todayWeather = list.remove(0);
//             mWeatherView.setToday(todayWeather.getDate());
//             mWeatherView.setTemperature(todayWeather.getTemperature());
//             mWeatherView.setWeather(todayWeather.getWeather());
//             mWeatherView.setWind(todayWeather.getWind());
//             mWeatherView.setWeatherImage(todayWeather.getImageRes());
//         }
//         mWeatherView.setWeatherData(list);
//         mWeatherView.hideProgress();
//         mWeatherView.showWeatherLayout();
//     }
// 
//     @Override
//     public void onFailure(String msg, Exception e) {
//         mWeatherView.hideProgress();
//         mWeatherView.showErrorToast("获取天气数据失败");
//     }
// 
// }
// 
// Path: app/src/main/java/com/lauren/simplenews/weather/view/WeatherView.java
// public interface WeatherView {
// 
//     void showProgress();
//     void hideProgress();
//     void showWeatherLayout();
// 
//     void setCity(String city);
//     void setToday(String data);
//     void setTemperature(String temperature);
//     void setWind(String wind);
//     void setWeather(String weather);
//     void setWeatherImage(int res);
//     void setWeatherData(List<WeatherBean> lists);
// 
//     void showErrorToast(String msg);
// 
// 
// }


// Path: app/src/main/java/com/lauren/simplenews/weather/widget/WeatherFragment.java
import android.os.Bundle;
import android.support.design.widget.Snackbar;
import android.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.TextView;
import com.lauren.simplenews.R;
import com.lauren.simplenews.beans.WeatherBean;
import com.lauren.simplenews.weather.presenter.WeatherPresenter;
import com.lauren.simplenews.weather.presenter.WeatherPresenterImpl;
import com.lauren.simplenews.weather.view.WeatherView;
import java.util.ArrayList;
import java.util.List;

    public void setCity(String city) {
        mCityTV.setText(city);
    }

    @Override
    public void setToday(String data) {
        mTodayTV.setText(data);
    }

    @Override
    public void setTemperature(String temperature) {
        mTodayTemperatureTV.setText(temperature);
    }

    @Override
    public void setWind(String wind) {
        mTodayWindTV.setText(wind);
    }

    @Override
    public void setWeather(String weather) {
        mTodayWeatherTV.setText(weather);
    }

    @Override
    public void setWeatherImage(int res) {
        mTodayWeatherImage.setImageResource(res);
    }

    @Override
    public void setWeatherData(List<WeatherBean> lists) {