Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 运行recyclerView程序时出现白色屏幕问题_Java_Android_Android Recyclerview_Android Volley - Fatal编程技术网

Java 运行recyclerView程序时出现白色屏幕问题

Java 运行recyclerView程序时出现白色屏幕问题,java,android,android-recyclerview,android-volley,Java,Android,Android Recyclerview,Android Volley,我正在尝试制作一个程序,该程序将数据显示到recyclerView中。 我的程序有问题,当我尝试在recyclerView中显示数据时,屏幕显示为白色无显示。如果有人知道代码中有什么问题,请帮助我。附上我的项目的完整代码。还附上完整的日志 从页面main活动开始 public class MainActivity extends AppCompatActivity { private static final String HI = "https://uniqueandrocode.

我正在尝试制作一个程序,该程序将数据显示到recyclerView中。 我的程序有问题,当我尝试在recyclerView中显示数据时,屏幕显示为白色无显示。如果有人知道代码中有什么问题,请帮助我。附上我的项目的完整代码。还附上完整的日志

从页面main活动开始


public class MainActivity extends AppCompatActivity {
    private static final String HI = "https://uniqueandrocode.000webhostapp.com/hiren/androidtutorial/getimagelikedata.php";
    private List<MyListData>myListData;
    private RecyclerView rv;
    private JsonArrayRequest request;
    private RequestQueue requestQueue;
    private MyAdapter adapter;
    public static MyDatabase myDatabase;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        rv=(RecyclerView)findViewById(R.id.recycler_view);
        rv.setHasFixedSize(true);
        rv.setLayoutManager(new LinearLayoutManager(this));

        myListData=new ArrayList();
        myDatabase= Room.databaseBuilder(getApplicationContext(),MyDatabase.class,"mydb").allowMainThreadQueries().build();
       getData();
    }

    private void getData() {
        request=new JsonArrayRequest(HI, new Response.Listener<JSONArray>() {
            @Override
            public void onResponse(JSONArray response) {
                JSONObject jsonObject=null;
                for (int i=0; i<response.length(); i++){
                    try {
                        JSONObject ob=response.getJSONObject(i);
                        MyListData md=new MyListData(ob.getInt("id"),ob.getString("imageurl"),ob.getString("like"));
                        myListData.add(md);
                    } catch (JSONException e) {
                        e.printStackTrace();
                    }

                }
                setupData(myListData);

            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {

            }
        });

        requestQueue= Volley.newRequestQueue(this);
        requestQueue.add(request);

    }

    private void setupData(List<MyListData> myListData) {


        adapter=new MyAdapter( myListData,this);
        rv.setAdapter(adapter);


    }
}



先生,您错过了定义GET请求的第三个参数

  private void getData() {
    request=new JsonArrayRequest(HI, Request.Method.GET,
 new Response.Listener<JSONArray>() {
        @Override
        public void onResponse(JSONArray response) {
            JSONObject jsonObject=null;
            for (int i=0; i<response.length(); i++){
                try {
                    JSONObject ob=response.getJSONObject(i);
                    MyListData md=new MyListData(ob.getInt("id"),ob.getString("imageurl"),ob.getString("like"));
                    myListData.add(md);
                } catch (JSONException e) {
                    e.printStackTrace();
                }

            }
            setupData(myListData);

        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {

        }
    });

    requestQueue= Volley.newRequestQueue(this);
    requestQueue.add(request);

}
private void getData(){
request=new-JsonArrayRequest(HI,request.Method.GET,
新的Response.Listener(){
@凌驾
公共void onResponse(JSONArray响应){
JSONObject JSONObject=null;

对于(inti=0;isir),您错过了定义GET请求的第三个参数

  private void getData() {
    request=new JsonArrayRequest(HI, Request.Method.GET,
 new Response.Listener<JSONArray>() {
        @Override
        public void onResponse(JSONArray response) {
            JSONObject jsonObject=null;
            for (int i=0; i<response.length(); i++){
                try {
                    JSONObject ob=response.getJSONObject(i);
                    MyListData md=new MyListData(ob.getInt("id"),ob.getString("imageurl"),ob.getString("like"));
                    myListData.add(md);
                } catch (JSONException e) {
                    e.printStackTrace();
                }

            }
            setupData(myListData);

        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {

        }
    });

    requestQueue= Volley.newRequestQueue(this);
    requestQueue.add(request);

}
private void getData(){
request=new-JsonArrayRequest(HI,request.Method.GET,
新的Response.Listener(){
@凌驾
公共void onResponse(JSONArray响应){
JSONObject JSONObject=null;

对于(int i=0;我想你检查一下你在postman上的api响应。你在logcatI上的截击请求我不太理解你,兄弟,我现在该怎么办?对不起,我是一个新开发的应用程序。你在postman上检查api响应了吗。你在logcatI上的截击请求我不太理解你,兄弟,我现在该怎么办对不起,我是一个新的应用程序开发者
import androidx.room.Database;
import androidx.room.RoomDatabase;

@Database(entities={LikeDislike_List.class},version = 1, exportSchema = false)
public abstract class MyDatabase extends RoomDatabase  {
    public abstract LikeDislikeDao myDao();
}

package com.example.myapplication;



import androidx.room.ColumnInfo;
import androidx.room.Entity;
import androidx.room.PrimaryKey;

@Entity(tableName="mydata")
public class LikeDislike_List {
    @PrimaryKey
    private int id;
    @ColumnInfo(name = "user_name")
    private String name;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}


@Dao
public interface LikeDislikeDao {
   @Insert
   public void addData(LikeDislike_List likeDislikeList);

   @Query("select * from mydata")
   public List<LikeDislike_List>getMyData();

   @Query("SELECT EXISTS (SELECT 1 FROM mydata WHERE id=:id)")
   public int isLiked(int id);

   @Delete
   public void delete(LikeDislike_List likeDislikeList);


}

02-17 19:04:01.856 7156-7161/? E/jdwp: Failed writing handshake bytes: Broken pipe (-1 of 14)
02-17 19:04:02.276 7156-7156/? E/dalvikvm: Could not find class 'androidx.core.view.ViewCompat$2', referenced from method androidx.core.view.ViewCompat.addOnUnhandledKeyEventListener
02-17 19:04:02.280 7156-7156/? E/dalvikvm: Could not find class 'android.view.WindowInsets', referenced from method androidx.core.view.ViewCompat.dispatchApplyWindowInsets
02-17 19:04:02.364 7156-7156/? E/dalvikvm: Could not find class 'android.view.WindowInsets', referenced from method androidx.core.view.ViewCompat.onApplyWindowInsets
02-17 19:04:02.364 7156-7156/? E/dalvikvm: Could not find class 'android.view.View$OnUnhandledKeyEventListener', referenced from method androidx.core.view.ViewCompat.removeOnUnhandledKeyEventListener
02-17 19:04:02.368 7156-7156/? E/dalvikvm: Could not find class 'androidx.core.view.ViewCompat$1', referenced from method androidx.core.view.ViewCompat.setOnApplyWindowInsetsListener
02-17 19:04:02.636 7156-7156/? E/dalvikvm: Could not find class 'android.graphics.drawable.RippleDrawable', referenced from method androidx.appcompat.widget.AppCompatImageHelper.hasOverlappingRendering
02-17 19:04:02.824 7156-7156/? E/dalvikvm: Could not find class 'android.view.textclassifier.TextClassificationManager', referenced from method androidx.appcompat.widget.AppCompatTextClassifierHelper.getTextClassifier
02-17 19:04:03.044 7156-7156/com.example.myapplication E/RecyclerView: No adapter attached; skipping layout
02-17 19:04:03.060 7156-7156/com.example.myapplication E/RecyclerView: No adapter attached; skipping layout
  private void getData() {
    request=new JsonArrayRequest(HI, Request.Method.GET,
 new Response.Listener<JSONArray>() {
        @Override
        public void onResponse(JSONArray response) {
            JSONObject jsonObject=null;
            for (int i=0; i<response.length(); i++){
                try {
                    JSONObject ob=response.getJSONObject(i);
                    MyListData md=new MyListData(ob.getInt("id"),ob.getString("imageurl"),ob.getString("like"));
                    myListData.add(md);
                } catch (JSONException e) {
                    e.printStackTrace();
                }

            }
            setupData(myListData);

        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {

        }
    });

    requestQueue= Volley.newRequestQueue(this);
    requestQueue.add(request);

}