我有一个列表中保存的改造响应。我试图将适配器连接到回收器视图,以显示响应中的数据。我设法将适配器连接到回收器视图,但实际上我看不到任何显示在回收器视图中的数据。响应很好,我可以毫不费力地记录它。
适配器
public class ForecastAdapter extends RecyclerView.Adapter<ForecastAdapter.ViewHolder> {
private List<ModelClass> mForecastData = new ArrayList<>();
private Context mContext;
private static final String TAG = "ForecastAdapter";
public ForecastAdapter(Context context, List<ModelClass> mForecastData) {
this.mContext = context;
this.mForecastData = mForecastData;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item, parent, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
holder.mTemperature.setText(mForecastData.get(position).getForecastData().get(position)
.getDatetime());
}
@Override
public int getItemCount() {
return mForecastData.size();
}
public class ViewHolder extends RecyclerView.ViewHolder {
TextView mTemperature, mPressure;
public ViewHolder(@NonNull View itemView) {
super(itemView);
mTemperature = (TextView) itemView.findViewById(R.id.list_temperature);
mPressure = (TextView) itemView.findViewById(R.id.list_pressure);
}
}
}
主要活动
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
List<ModelClass> mForecastData = new ArrayList<>();
setupRecyclerView(mForecastData);
Retrofit mRetrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
ApiInterface mInterface = mRetrofit.create(ApiInterface.class);
Call<ModelClass> mForecastDataCall = mInterface.getForecastData(
35, 139, "");
mForecastDataCall.enqueue(new Callback<ModelClass>() {
@Override
public void onResponse(Call<ModelClass> call, Response<ModelClass> response) {
if (!response.isSuccessful()) {
System.out.println(response.code());
}
mForecastData.addAll(Collections.singleton(response.body()));
}
@Override
public void onFailure(Call<ModelClass> call, Throwable t) {
t.printStackTrace();
}
});
}
private void setupRecyclerView(List<ModelClass> data){
RecyclerView mRecyclerView = findViewById(R.id.main_rv);
mRecyclerView.setLayoutManager(new LinearLayoutManager(getApplicationContext()));
mRecyclerView.hasFixedSize();
ForecastAdapter mAdapter = new ForecastAdapter(getApplicationContext(), data);
mRecyclerView.setAdapter(mAdapter);
mAdapter.notifyDataSetChanged();
}
}
模型
public class ModelClass {
@SerializedName("cod")
private int requestCode;
@SerializedName("list")
List<ForecastList> forecastData = new ArrayList<>();
public List<ForecastList> getForecastData() {
return forecastData;
}
public class ForecastList {
@SerializedName("dt")
private int datetime;
@SerializedName("main")
MainData mainData = null;
public MainData getMainData() {
return mainData;
}
public int getDatetime() {
return datetime;
}
public class MainData {
@SerializedName("temp")
private double temperature;
public double getTemperature() {
return temperature;
}
}
}
}
Api响应
{
"cod": "200",
"message": 0,
"cnt": 40,
"list": [
{
"dt": 1596564000,
"main": {
"temp": 293.55,
"feels_like": 293.13,
"temp_min": 293.55,
"temp_max": 294.05,
"pressure": 1013,
"sea_level": 1013,
"grnd_level": 976,
"humidity": 84,
"temp_kf": -0.5
}
...
我想你是在调用setupRecyclerView(mForecastData)
在接收数据之前填充列表。
在收到如下数据后,尝试调用函数:
mForecastDataCall.enqueue(new Callback<ModelClass>() {
@Override
public void onResponse(Call<ModelClass> call, Response<ModelClass> response) {
if (!response.isSuccessful()) {
System.out.println(response.code());
}
mForecastData.addAll(Collections.singleton(response.body()));
////////////////////call it here/////////////////
setupRecyclerView(mForecastData);
}
@Override
public void onFailure(Call<ModelClass> call, Throwable t) {
t.printStackTrace();
}
我正在尝试从Firebase实时数据库中检索数据(产品图像和价格)并将其放入回收器视图中,但我有一些困难。在我的数据库中,我存储了一个产品的图像url,我想在放置在cardView中的ImageView组件中显示该图像。我还设法正确检索了url和价格,但我的回收器视图没有显示它们。这是我的产品类: 我的适配器如下: 我在我的recyclerView中放置的活动: 产品名称是正确的,因为它是一个变量
我想在网站中使用Php获取Api响应(在nodejs中创建),所以为此我使用了curl,但它不起作用,我尝试了以下代码,但不起作用(显示空白页面),我错在哪里?这是我的密码
我不确定,如果我遗漏了什么,但在谷歌上也找不到。我正在研究Jmeter的一些特性。我也用过邮递员。我们有API POST请求,它返回JSON响应。 在从Postman访问API时,我得到了“JSON”响应。(即无问题)和API触发我的服务。 现在,如果从Jmeter命中。如果200和我的服务也触发,则响应。但作为回应,我得到了一些代码或键,而不是JSON值。 就像'e5e9e97a9ba2144b
我正在制作一个音乐播放器应用程序,其中我正在使用一个加载器将歌曲数据加载到适配器,该适配器将使用一个RecyclerView显示。然而,我得到了一个奇怪的错误,我的适配器方法不能工作。只调用适配器的构造函数方法。我还得到了“没有连接适配器;跳过布局”,尽管在stack Overflow中浏览了所有可用的解决方案。 需要注意的几点: 我已经尝试了recyclerview中“未附加适配器;跳过布局”(
我是JMeter的新手。我已经设置了HTTP请求采样器来发送GET请求到Google.com。我得到的反应是200。但我找不到响应头,它显示了响应中的cookie。我想在下一个请求中使用该cookie值。