Sexto Zhou Anzhuo resumen del estudio de desarrollo (2)

EDITORIAL

De hecho, esta es la última semana de la escuela, pero aprendió más de la mitad, debido a una variedad de cosas fallidos para continuar. Aprovechando la escuela vez el lunes ha terminado.
El principal estudio de la utilización de un --RecyclerView control. RecyclerView es un medio muy poderoso controles, se puede usar para reemplazar vista de lista, gridview, escalonar (cascada) y otros efectos, y puede implementar entradas personalizadas. Es un control muy lisiados.
Github código de enlace para este artículo: https://github.com/wushenjiang/RecyclerViewDemo

Importar paquete

Antes de su uso, es necesario importar el paquete correspondiente. Nos proyecto de la derecha, seleccione para abrir el administrador.
En el Organizador, seleccionar

, seleccione Dependencia biblioteca, fuera de la interfaz de entrada recyclerview

puede utilizar el RecyclerView potente!

Escribir la barra de menú

Con el fin de lograr la misma actividad para mostrar, primero tenemos que escribir una carta sencilla.
Crear un menu.xml, el siguiente código:

 <menu>
  <item android:title="ListView效果"
        android:id="@+id/list_view">
        <menu>
            <item android:title="垂直标准"
                android:id="@+id/list_view_vertical_standard"></item>
            <item android:title="垂直反向"
                android:id="@+id/list_view_vertical_reverse"></item>
            <item android:title="水平标准"
                android:id="@+id/list_view_horizontal_standard"></item>
            <item android:title="水平反向"
                android:id="@+id/list_view_horizontal_reverse"></item>
        </menu>
    </item>
    <item android:title="GridView效果"
        android:id="@+id/grid_view">
    <menu>
        <item android:title="垂直标准"
            android:id="@+id/grid_view_vertical_standard"></item>
        <item android:title="垂直反向"
            android:id="@+id/grid_view_vertical_reverse"></item>
        <item android:title="水平标准"
            android:id="@+id/grid_view_horizontal_standard"></item>
        <item android:title="水平反向"
  </item>
    <item android:title="瀑布流效果"
        android:id="@+id/stagger_view"
        >
        <menu>
            <item android:title="垂直标准"
                android:id="@+id/stagger_view_vertical_standard"></item>
            <item android:title="垂直反向"
                android:id="@+id/stagger_view_vertical_reverse"></item>
            <item android:title="水平标准"
                android:id="@+id/stagger_view_horizontal_standard"></item>
            <item android:title="水平反向"
                android:id="@+id/stagger_view_horizontal_reverse"></item>
        </menu>
    </item>
    <item
        android:title="多种条目类型"
        android:id="@+id/multi_type"
        >
    </item>
</menu>

Llamamos a este XML en mainactivity:

 @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu,menu);
        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int itemId = item.getItemId();
        switch(itemId){
            //ListView部分
            case R.id.list_view_vertical_standard:
                Log.d(TAG,"点击了ListView的垂直标准");
                showList(true,false);
                break;
            case R.id.list_view_vertical_reverse:
                Log.d(TAG,"点击了ListView的垂直反向");
                showList(true,true);
                break;
            case R.id.list_view_horizontal_standard:
                Log.d(TAG,"点击了ListView的水平标准");
                showList(false,false);
                break;
            case R.id.list_view_horizontal_reverse:
                Log.d(TAG,"点击了ListView的水平反向");
                showList(false,true);
                break;
                //GridView部分
            case R.id.grid_view_vertical_standard:
                Log.d(TAG,"点击了GridView的垂直标准");
                showGrid(true,false);
                break;
            case R.id.grid_view_vertical_reverse:
                Log.d(TAG,"点击了GridView的垂直反向");
                showGrid(true,true);
                break;
            case R.id.grid_view_horizontal_standard:
                Log.d(TAG,"点击了GridView的水平标准");
                showGrid(false,false);
                break;
            case R.id.grid_view_horizontal_reverse:
                Log.d(TAG,"点击了GridView的水平反向");
                showGrid(false,true);
                break;
                //瀑布流部分
            case R.id.stagger_view_vertical_standard:
                Log.d(TAG,"点击了瀑布流的垂直标准");
                showStagger(true,false);
                break;
            case R.id.stagger_view_vertical_reverse:
                Log.d(TAG,"点击了瀑布流的垂直反向");
                showStagger(true,true);
                break;
            case R.id.stagger_view_horizontal_standard:
                Log.d(TAG,"点击了瀑布流的水平标准");
                showStagger(false,false);
                break;
            case R.id.stagger_view_horizontal_reverse:
                Log.d(TAG,"点击了瀑布流的水平反向");
                showStagger(false,true);
                break;
            //多种条目类型被点击了
            case R.id.multi_type:
                //跳到一个新的Activity里面来实现这个功能
                Intent intent  = new Intent(this,MultiTypeActivity.class);
                startActivity(intent);
                break;

        }
        return super.onOptionsItemSelected(item);
    }

Lograr listview (gridview, escalonar) efecto

Como la realización de estos tres son similares, hay una unidad directa, sólo hablar de las ideas. CÓDIGO favor ver de lo anterior, en GitHub.
En primer lugar establece el controlador de distribución, establecer sus propiedades, y luego crear el adaptador y el adaptador de enlace RecyclerView Ir a. Ubicado en la github adaptador Sede.

Para lograr la actualización desplegable

Necesidad de utilizar un control de actualización desplegable SwipeRefreshLayout, paquete de guía es el mismo método. RecyclerView envoltura puede ser directa. Después de volver a escribir el método lata en mainactivity en.

Los resultados muestran

listview verticales

gridview verticales

efecto de cascada

nivel listview

nivel gridview

nivel de cascada de

tipo de entrada múltiple

Supongo que te gusta

Origin www.cnblogs.com/wushenjiang/p/12601506.html
Recomendado
Clasificación