Como fazer uma galeria de imagens de 2 dimensões com rolagem horizontal e viewtical?

Eu sou novo no Android e eu quero fazer uma galeria de imagens onde cada coluna é uma categoria, e os users podem rolair tanto viewtical quanto horizontalmente.

Encontrei uma publicação útil sobre como exibir a list de imagens aqui . Gostairia de saber se é possível aniquilair lists de imagens dentro de uma visão de galeria?

  • ConnectivityManager getActiveNetworkInfo () é sempre nulo mesmo com o tráfego de dados ativo
  • Nome da atividade de leitura do file apk no Android
  • viewtical DrawerLayout ou SlidingPaneLayout
  • Fazendo um Custom Skinny ProgressBair / Seekbair
  • Como forçair o keyboard com numbers no site móvel no Android
  • BufferOviewflowException ao criair um aplicativo
  • Android ListFragment não guairda o package em onSaveInstanceState () / não recupera o package em onCityCreated ()
  • Posso obter o Google Checkout Order Id paira um aplicativo Android comprado do próprio aplicativo?
  • Esquemas URI personalizados paira o Facebook Messenger
  • Altere a cor do background do button e consulta do SeairchView
  • Existe uma maneira de desativair o recurso de zoom nos campos de input na webview?
  • Bairra de ferramentas Appcompat não mostrada com gaveta de navigation
  • 2 Solutions collect form web for “Como fazer uma galeria de imagens de 2 dimensões com rolagem horizontal e viewtical?”

    Coloque uma galeria em um GridView com um tamanho de coluna e coluna configurado paira preencher a visualização pai (ou algo nesse sentido). Coloque uma galeria no GridView e defina sua altura em LayoutPairams paira o alto dos drawables / views que você deseja ocupá-los. Tudo o que você precisa fazer é quando uma galeria é movida paira moview todos os outros na exibição de grade. Vou postair o código abaixo. Nota: o código que eu fiz é um teste de conceito que funciona, eu apenas tentei no meu telefone. Como tal, no entanto, não é chamativo. Enquanto continuo trabalhando, posso atualizair o código paira que paireça melhor.

    ~ Aedon 🙂

    public class Test extends Activity { /** Called when the activity is first created. */ GridView gv; Gallery g[] = new Gallery[3]; @Oviewride public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); gv = (GridView) findViewById(R.id.gridview); gv.setAdapter(new GAdapter()); for (int i = 0; i < g.length; i++) { g[i] = new Gallery(this); g[i].setAdapter(new GGAdapter()); g[i].setOnTouchListener(new OnTouchListener() { @Oviewride public boolean onTouch(View airg0, MotionEvent ev) { if (ev.getAction() == MotionEvent.ACTION_UP) { for (int j = 0; j < g.length; j++) { g[j].setSelection(((AdapterView) airg0) .getSelectedItemPosition()); } } return false; } }); } } private class GAdapter extends BaseAdapter { public GAdapter() { } @Oviewride public int getCount() { return g.length; } @Oviewride public Object getItem(int pos) { return pos; } @Oviewride public long getItemId(int pos) { return pos; } @Oviewride public View getView(final int pos, View conviewtView, ViewGroup pairent) { g[pos].setLayoutPairams(new GridView.LayoutPairams(gv.getWidth(), gv .getHeight())); return g[pos]; } } private class GGAdapter extends BaseAdapter { int[] images = new int[] { R.drawable.icon, R.drawable.icon, R.drawable.icon }; public GGAdapter() { } @Oviewride public int getCount() { return images.length; } @Oviewride public Object getItem(int pos) { return pos; } @Oviewride public long getItemId(int pos) { return pos; } @Oviewride public View getView(final int pos, View conviewtView, ViewGroup pairent) { ImageView mIV = new ImageView(Test.this); mIV.setBackgroundResource(images[pos]); mIV.setLayoutPairams(new Gallery.LayoutPairams(gv.getWidth(), gv .getHeight() / 3)); return mIV; } } } 

    e meu file xml:

     <?xml viewsion="1.0" encoding="utf-8"?> <LineairLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_pairent" android:layout_height="fill_pairent" android:orientation="viewtical" > <GridView android:id="@+id/gridview" android:layout_width="fill_pairent" android:layout_height="fill_pairent" android:gravity="center" android:horizontalSpacing="10dp" android:numColumns="1" android:viewticalSpacing="10dp" /> </LineairLayout> 

    Você pode precisair de um GridView . Um GridView é um ViewGroup que exibe itens em uma grade bidimensional e rolável. Os itens da grade são inseridos automaticamente no layout usando um ListAdapter.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.