如何在每行3个元素之后在网格视图中提供空间?
预期观点如下:
。
这是我的主要活动代码。 请检查我上面给出的屏幕 我想在android中的网格视图中有一个空格,如何在每行3个元素之后在网格视图中给出空间?
public void submit() {
String URLL= "https://api.myjson.com/bins/14h7rp";
StringRequest stringRequest = new StringRequest(Request.Method.GET, URLL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
JSONObject object=new JSONObject(response);
String status=object.getString("Status");
String Data=object.getJSONObject("Data").getString("Seat_details");
JSONArray jsonArray=new JSONArray(Data);
for (int i=0;i<jsonArray.length();i++){
JSONObject J=jsonArray.getJSONObject(i);
String seats=J.getString("seats");
JSONArray jsonArray1=new JSONArray(seats);
for (int k=0;k<jsonArray1.length();k++){
JSONObject l=jsonArray1.getJSONObject(k);
String id=l.getString("id");
String name=l.getString("name");
String bookedStatus=l.getString("bookedStatus");
m=new Model();
m.setId(id);
m.setName(name);
m.setBookedStatus(bookedStatus);
arrayList.add(m);
}
}
} catch (JSONException e) {
e.printStackTrace();
}
adapter=new MainActivityAdapter(arrayList,MainActivity.this);
recyclerView.setAdapter(adapter);
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
}) {
@Override
}
}
我的Recylerview初始化在
之下 private void init_views() {
recyclerView=(RecyclerView)findViewById(R.id.recyclerview);
int spacingInPixels = getResources().getDimensionPixelSize(R.dimen.spacing);
recyclerView.addItemDecoration(new SpacesItemDecoration(spacingInPixels));
recyclerView.setHasFixedSize(true);
RecyclerView.LayoutManager layoutManager = new GridLayoutManager(getApplicationContext(),5);
recyclerView.setLayoutManager(layoutManager);
/* DividerItemDecoration dividerItemDecoration = new DividerItemDecoration(recyclerView.getContext(),
layoutManager.getOrientation(layoutManager));
recyclerView.addItemDecoration(dividerItemDecoration);*/
}
答案 0 :(得分:1)
你得到答案的方式之一,但它不是正确的方式
try {
JSONObject object=new JSONObject(response);
String status=object.getString("Status");
String Data=object.getJSONObject("Data").getString("Seat_details");
// System.out.println("_______Data_________" + Data);
JSONArray jsonArray=new JSONArray(Data);
for (int i=0;i<jsonArray.length();i++){
JSONObject J=jsonArray.getJSONObject(i);
String seats=J.getString("seats");
JSONArray jsonArray1=new JSONArray(seats);
for (int k=0;k<jsonArray1.length();k++){
if (k%COLUMNS==3) {
m=new Model();
m.setId("");
m.setName("");
m.setSeatKey("");
m.setRowNumber("");
m.setColumnIndex("");
m.setBookedStatus("2");
arrayList.add(m);
} else{
JSONObject l=jsonArray1.getJSONObject(k);
String id=l.getString("id");
String name=l.getString("name");
String seatKey=l.getString("seatKey");
String rowNumber=l.getString("rowNumber");
String columnIndex=l.getString("columnIndex");
String bookedStatus=l.getString("bookedStatus");
System.out.println("______name_________" + name);
m=new Model();
m.setId(id);
m.setName(name);
m.setSeatKey(seatKey);
m.setRowNumber(rowNumber);
m.setColumnIndex(columnIndex);
m.setBookedStatus(bookedStatus);
arrayList.add(m);
}
}
}
} catch (JSONException e) {
e.printStackTrace();
}
声明COLUMN变量
private static final int COLUMNS = 6;