/ / Android GridView Coloque la mitad de los elementos a la izquierda y la mitad a la derecha - java, android, gridview

Android GridView Coloque la mitad de los elementos a la izquierda y la mitad a la derecha - java, android, gridview

Supongamos que tenemos 6 elementos, ¿existe alguna posibilidad o forma de colocar 3 elementos en el lado izquierdo de la fila y 3 elementos en el lado derecho de la fila en la vista de cuadrícula y, finalmente, tenemos un espacio entre ellos?

En realidad, intenté dar un espaciado horizontal dinámico desde el adaptador, pero no me ayudó. La imagen está adjunta

enter image description here

    package com.nxd.cap.Adapters;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.TextView;

import com.nxd.cap.R;

import java.util.ArrayList;

public class GalleryAdapter extends BaseAdapter {

Context context;
int[] images = new int[]{R.drawable.image1, R.drawable.image2, R.drawable.image3, R.drawable.image4,
R.drawable.image5, R.drawable.image6, R.drawable.image7, R.drawable.image8,
R.drawable.image1, R.drawable.image2};

public GalleryAdapter(Context context) {
this.context = context;
}

@Override
public int getCount() {
return images.length;
}

@Override
public Object getItem(int i) {
return images[i];
}

@Override
public long getItemId(int i) {
return i;
}

@Override
public View getView(int i, View view, ViewGroup viewGroup) {
if (view == null){
LayoutInflater inflater = (LayoutInflater)
context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(R.layout.gallery_item, null);

ViewHolder viewHolder = new ViewHolder();
viewHolder.imageView = (ImageView)view.findViewById(R.id.imageView);
view.setTag(viewHolder);
}
ViewHolder viewHolder = (ViewHolder) view.getTag();
//        Picasso.with(context).load(images[i]).into(viewHolder.image);

GridView gridView = (GridView)viewGroup;
if (i == images.length/2) {
gridView.setHorizontalSpacing(100);
}

viewHolder.imageView.setImageResource(images[i]);

return view;
}

static class ViewHolder {
ImageView imageView;
}
}

Respuestas

0 para la respuesta № 1

cuando usó gridView, puede establecer el número de columna. Si necesita solo dos columnas, a la izquierda y a la derecha, debajo del código.

   gridView.setNumColumns(2);