我有一些关于适配器的问题,这是我的loadData()
方法:
public class MainActivity extends AppCompatActivity {
private static final String URL_DATA = "http://api.openweathermap.org/data/2.5/weather?q=Malang&appid=2c869002c83226532f2ac719d5c80c49";
private RecyclerView mRecyclerView;
private RecyclerView.Adapter adapter;
ArrayList<List> listItem;
private void loadData (){
final ProgressDialog progressDialog = new ProgressDialog(this) ;
progressDialog.setMessage("Loading Data");
progressDialog.show();
StringRequest stringRequest = new StringRequest(Request.Method.POST,
URL_DATA,
new Response.Listener<String>() {
@Override
public void onResponse(String s) {
progressDialog.dismiss();
try {
JSONObject jobj = new JSONObject(s);
JSONArray array = jobj.getJSONArray("weather");
for (int i=0; i<array.length(); i++){
JSONObject obj = array.getJSONObject(i);
List item = new List(
obj.getString("description"),
obj.getString("main"),
obj.getString("base")
);
listItem.add(item);
}
adapter = new CustomAdapter(getApplicationContext(), listItem);
mRecyclerView.setAdapter(adapter);
} catch (JSONException e) {
e.printStackTrace();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
progressDialog.dismiss();
Toast.makeText(getApplicationContext(), error.getMessage(), Toast.LENGTH_LONG).show();
}
});
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listItem = new ArrayList<>();
adapter = new CustomAdapter(MainActivity.this, listItem);
RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getApplicationContext());
mRecyclerView.setLayoutManager(mLayoutManager);
mRecyclerView.setAdapter(adapter);
loadData();
}
另一个Java:1。名单。Java
public class List {
//public int gambar;
public String nama;
public String suhu;
public String kelembapan;
public List (String nama, String suhu, String kelembapan) {
this.nama = nama;
this.suhu = suhu;
this.kelembapan = kelembapan;
}
public String getNama(){
return nama;
}
public String getSuhu(){
return suhu;
}
public String getkelembapan(){
return kelembapan;
}
}
尝试使用mainactivity.this
而不是GetApplicationContext()
在设置Adater之前,还要将Layout Manager设置为代码
mRecyclerView.setLayoutManager(new LinearLayoutManager(MainActivity.this));
我收到以下错误:“RecyclerView:未连接适配器;跳过布局”,但我已连接适配器...我尝试了许多不同的方法,但我无法解决错误。 我正在使用Volley库获取数据。当我启动活动时,只有进度条可见,直到结束,我收到上面的Logcat消息。我在中添加了带有适配器的。你能帮我吗? 这是我的代码: 主活动 地震适配器 MainActivity.xml 地震法。xml
图像不显示。在一个SO例子中说要检查适配器中的计数,但我认为它是正确的。我在logcat中得到这个错误 这是代码主活动 这是我的适配器。
它给了我“回收站视图:没有连接适配器;跳过布局“错误,但在我看来适配器已正确连接。请帮忙。 我正在移动我的方法,但它不起作用。我在这里寻找答案,但只有错误实现的适配器存在问题。我不知道这里出了什么问题。
我有一个带有recycler视图的活动,当我单击其中的一个项目时,它会导致带有另一个recycler视图的活动。然而,它一直给我一个“E/RecyclerView:没有适配器连接;跳过布局”错误。 这是onCreate()方法: 我看到了另一个类似于此的问题,即在运行其他线程之前连接适配器,但我不认为在这个活动中还有其他线程在运行。getBundleData()只执行以下操作:
ListPetientFragment。JAVA 错误是:2021-11-17 18:41:02.417 29997-29997/?E/rtphonemedicat:运行时设置的未知位_标志:0x8000 2021-11-17 18:41:03.628 29997-30029/com。尼戈特。smartphonemedicate E/GED:无法获取GED日志Buf,错误(0)2021-11-17
我根据类似问题的答案修改了代码,但没有一个有效。我正在使用TabFragments和RecyclerViews。控制台显示错误“E/RecyclerView:No adapter attached;kipping layout”四次。 (当修改它也给了我错误java.lang.NullPointerException:试图调用虚方法'voidandroid.support.v7.widget.Re