2013-07-15 81 views
2

我正在嘗試開發一個新項目。我的客戶希望我設計出像當前的GooglePlay設計(每個附件的塊設計)。這就是爲什麼我很困惑是否<android.support.v7.widget.GridLayout>將有用或不實施這種塊設計特色。如果沒有,請讓我知道該怎麼做?android gridlayout實現

enter image description here

回答

4

你可能想看看http://developer.android.com/design/building-blocks/grid-lists.html。不完全確定你想要做什麼,但我希望這有助於。它使用GridView而不是GridLayout。關於好後可以發現GridView VS GridLayout in Android Apps

編輯:這裏是我的榜樣

注:這其中大部分是從http://developer.android.com/guide/topics/ui/layout/gridview.html拍攝。 GridViewExample中使用的ImageAdapter將直接從那裏獲取,就像使用的圖片一樣。

這裏是我的佈局

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:background="@android:color/white" 
     android:textColor="@android:color/black" 
     android:textStyle="bold" 
     android:textSize="50sp" 
     android:gravity="center_horizontal" 
     android:text="Page Title" /> 

    <!-- Insert some sort of scrolling if desired --> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" > 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:background="@android:color/black" 
      android:textColor="@android:color/white" 
      android:textSize="25sp" 
      android:gravity="center_horizontal" 
      android:text="Grid 1 Title" /> 

     <GridView 
      android:id="@+id/gridView1" 
      android:layout_width="fill_parent" 
      android:layout_height="100dp" 
      android:columnWidth="50dp" 
      android:numColumns="auto_fit" 
      android:verticalSpacing="5dp" 
      android:horizontalSpacing="5dp" 
      android:stretchMode="columnWidth" 
      android:gravity="center" /> 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:background="@android:color/black" 
      android:textColor="@android:color/white" 
      android:textSize="25sp" 
      android:gravity="center_horizontal" 
      android:text="Grid 2 Title" /> 

     <GridView 
      android:id="@+id/gridView2" 
      android:layout_width="fill_parent" 
      android:layout_height="100dp" 
      android:columnWidth="50dp" 
      android:numColumns="auto_fit" 
      android:verticalSpacing="5dp" 
      android:horizontalSpacing="5dp" 
      android:stretchMode="columnWidth" 
      android:gravity="center" />   
    </LinearLayout> 
</LinearLayout> 

這是我的主要活動:

package com.example.gridviewdemo; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.AdapterView; 
import android.widget.AdapterView.OnItemClickListener; 
import android.widget.GridView; 
import android.widget.Toast; 

public class GridViewExample extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.gridview_example); 

     GridView gridView1 = (GridView) findViewById(R.id.gridView1); 
     gridView1.setAdapter(new ImageAdapter(this)); 

     gridView1.setOnItemClickListener(new OnItemClickListener() { 
      public void onItemClick(AdapterView<?> parent, View v, int position, long id) { 
       Toast.makeText(GridViewExample.this, "1: " + position, Toast.LENGTH_SHORT).show(); 
      } 
     }); 

     GridView gridView2 = (GridView)findViewById(R.id.gridView2); 
     gridView2.setAdapter(new ImageAdapter(this)); 

     gridView2.setOnItemClickListener(new OnItemClickListener(){ 
      public void onItemClick(AdapterView<?> parent, View v, int position, long id){ 
       Toast.makeText(GridViewExample.this, "2: " + position, Toast.LENGTH_SHORT).show(); 
      } 
     }); 
    } 
} 

產地: Image 它看起來像佈局是一個小關在平板電腦上,但也有一些工作我相信這是可以修復的

+0

我已經查閱了它,但還沒有任何想法來實現它。 – ppshein

+0

如果您的目標是讓它看起來像屏幕截圖,是不是可以在LinearLayout中使用GridView和TextView的組合? –

+0

你能提供什麼樣的例子嗎?順便提一下。 – ppshein