从右到左添加android gridview项

时间:2014-07-06 15:20:07

标签: android gridview layout

我想让gridview从右到左添加项目

我的意思是这样的:

  

3 2 1

     

6 5 4

所以我在android:rotationY="180"

的网格视图中添加了main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
android:gravity="center"
android:orientation="vertical" >
<GridView
    android:id="@+id/gridview"
    android:rotationY="180"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_gravity="right"
    android:columnWidth="90dp"
    android:gravity="right"
    android:horizontalSpacing="10dp"
    android:numColumns="auto_fit"
    android:stretchMode="columnWidth"
    android:verticalSpacing="10dp" />

  </LinearLayout>

另外,我使用item.xml使用Adaptor添加我的<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:rotationY="180" android:layout_height="wrap_content" android:orientation="vertical" android:padding="5dp" > <ImageView android:id="@+id/gridimage" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:layout_marginRight="29dp" android:layout_marginTop="15dp" android:src="@drawable/folder_icon" /> </LinearLayout>

{{1}}

但它不起作用,我该怎么做才能使它发挥作用?

2 个答案:

答案 0 :(得分:2)

您应该将android:rotationY="180"添加到item.xml

答案 1 :(得分:1)

您可以编辑网格视图的“适配器”,如下所示:

final Object object;
//move element at index 0 to index 2
if(position % 3 == 0 && items.size() > position +2){
    object = items.get(position + 2);
}
//move element at index 2 to index 0
else if(position % 3 == 2){
    object = items.get(position - 2);
}
//the element at index 1 still at index 1 (do nothing)

注意:如果在适配器中使用“onClickListener”而不是网格视图的“onItemClickListener”,这将完美地工作。或者您可以使用相同的公式正确获取所选位置。 ;)

希望这会帮助你= D