version:1.1
fix: update:迁移到UIUISOS
This commit is contained in:
@@ -0,0 +1,116 @@
|
||||
package com.uiuios.aios.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.util.Log;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.qweather.sdk.bean.weather.WeatherDailyBean;
|
||||
import com.uiuios.aios.R;
|
||||
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
public class WeatherDayApdapter extends RecyclerView.Adapter<WeatherDayApdapter.WeatherHolder> {
|
||||
private static final String TAG = WeatherDayApdapter.class.getSimpleName();
|
||||
private List<WeatherDailyBean.DailyBean> mDailyBeans;
|
||||
private Context mContext;
|
||||
|
||||
public void setDailyBeans(List<WeatherDailyBean.DailyBean> dailyBeans) {
|
||||
this.mDailyBeans = dailyBeans;
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public WeatherHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
mContext = parent.getContext();
|
||||
return new WeatherHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_weather, parent, false));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull WeatherHolder holder, int position) {
|
||||
WeatherDailyBean.DailyBean dailyBean = mDailyBeans.get(position);
|
||||
String dateString;
|
||||
switch (position) {
|
||||
// case 0:
|
||||
// dateString = "今天";
|
||||
// break;
|
||||
// case 1:
|
||||
// dateString = "明天";
|
||||
// break;
|
||||
// case 2:
|
||||
// dateString = "后天";
|
||||
// break;
|
||||
default:
|
||||
dateString = dailyBean.getFxDate();
|
||||
try {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
Date date = sdf.parse(dailyBean.getFxDate());
|
||||
SimpleDateFormat now = new SimpleDateFormat("MM月dd日");
|
||||
dateString = now.format(date);
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
holder.tv_date.setText(dateString);
|
||||
holder.tv_temp.setText(dailyBean.getTempMin() + "℃ - " + dailyBean.getTempMax() + "℃");
|
||||
holder.tv_weather.setText(dailyBean.getTextDay());
|
||||
String iconDay = dailyBean.getIconDay();
|
||||
switch (iconDay) {
|
||||
case "100":
|
||||
case "150":
|
||||
holder.iv_bg.setImageDrawable(ContextCompat.getDrawable(mContext, R.drawable.background_weather_sun));
|
||||
break;
|
||||
case "102":
|
||||
case "152":
|
||||
holder.iv_bg.setImageDrawable(ContextCompat.getDrawable(mContext, R.drawable.background_weather_sunny));
|
||||
break;
|
||||
default:
|
||||
holder.iv_bg.setImageDrawable(ContextCompat.getDrawable(mContext, R.drawable.background_weather_rain));
|
||||
}
|
||||
holder.iv_weather.setImageDrawable(getWeatherDrawable(iconDay));
|
||||
}
|
||||
|
||||
private Drawable getWeatherDrawable(String iconName) {
|
||||
int resID = mContext.getResources().getIdentifier("he" + iconName, "drawable", "com.uiuios.aios");
|
||||
if (resID == 0) {
|
||||
Log.e(TAG, "getView: not found src : " + iconName);
|
||||
return mContext.getResources().getDrawable(R.drawable.he100);
|
||||
} else {
|
||||
return mContext.getResources().getDrawable(resID);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return mDailyBeans == null ? 0 : mDailyBeans.size();
|
||||
}
|
||||
|
||||
static class WeatherHolder extends RecyclerView.ViewHolder {
|
||||
TextView tv_date;
|
||||
ImageView iv_weather;
|
||||
ImageView iv_bg;
|
||||
TextView tv_weather;
|
||||
TextView tv_temp;
|
||||
|
||||
public WeatherHolder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
tv_date = itemView.findViewById(R.id.tv_date);
|
||||
iv_weather = itemView.findViewById(R.id.iv_weather);
|
||||
iv_bg = itemView.findViewById(R.id.iv_bg);
|
||||
tv_weather = itemView.findViewById(R.id.tv_weather);
|
||||
tv_temp = itemView.findViewById(R.id.tv_temp);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user