1
我有一个问题,我无法弄清楚。我认为这很简单,但只是不知道该怎么做。Android Studio网格布局刷新
我有一个GridLayout
与24行和5列,并且所有单元格包含CardView
。例如,这是我layout.xml
(小版):
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ScrollView01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:onClick="RefreshWarehouse">
<GridLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ddd"
android:orientation="horizontal"
android:padding="16dp"
android:columnCount="5"
android:rowCount="24"
android:onClick="RefreshWarehouse">
//Accessories
<android.support.v7.widget.CardView
android:id="@+id/AccessoriesBoxLVL1CView"
android:layout_width="100dp"
android:layout_margin="5dp"
android:layout_height="120dp"
android:visibility="visible">
<RelativeLayout
android:background="#fff"
android:elevation="4dp"
android:padding="5dp"
android:layout_width="match_parent"
android:layout_height="120dp">
<ImageView
android:id="@+id/AccessoriesBoxLVL1Image"
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/money"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
<TextView
android:id="@+id/AccessoriesBoxLVL1Title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="5dp"
android:text="AccessoriesBoxLVL - 1"
android:textSize="8sp"
android:layout_below="@+id/AccessoriesBoxLVL1Image"
android:layout_centerHorizontal="true" />
<Button
android:text="Open"
android:layout_width="50dp"
android:layout_height="35dp"
android:id="@+id/AccessoriesBoxLVL1Button"
android:textSize="10sp"
android:layout_below="@+id/AccessoriesBoxLVL1TView"
android:layout_centerHorizontal="true"
android:onClick="openAccessoriesBoxLVL1"/>
<TextView
android:id="@+id/AccessoriesBoxLVL1TView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Count: "
android:textColor="#8b8b8b"
android:textSize="9sp"
android:layout_below="@+id/AccessoriesBoxLVL1Title"
android:layout_centerHorizontal="true" />
</RelativeLayout>
</android.support.v7.widget.CardView>
<android.support.v7.widget.CardView
android:id="@+id/AccessoriesBoxLVL2CView"
android:layout_width="100dp"
android:layout_margin="5dp"
android:layout_height="120dp"
android:visibility="visible">
<RelativeLayout
android:background="#fff"
android:elevation="4dp"
android:padding="5dp"
android:layout_width="match_parent"
android:layout_height="120dp">
<ImageView
android:id="@+id/AccessoriesBoxLVL2Image"
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/money"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
<TextView
android:id="@+id/AccessoriesBoxLVL2Title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="5dp"
android:text="AccessoriesBoxLVL - 2"
android:textSize="8sp"
android:layout_below="@+id/AccessoriesBoxLVL2Image"
android:layout_centerHorizontal="true" />
<Button
android:text="Open"
android:layout_width="50dp"
android:layout_height="35dp"
android:id="@+id/AccessoriesBoxLVL2Button"
android:textSize="10sp"
android:layout_below="@+id/AccessoriesBoxLVL2TView"
android:layout_centerHorizontal="true"
android:onClick="openAccessoriesBoxLVL2"/>
<TextView
android:id="@+id/AccessoriesBoxLVL2TView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Count: "
android:textColor="#8b8b8b"
android:textSize="9sp"
android:layout_below="@+id/AccessoriesBoxLVL2Title"
android:layout_centerHorizontal="true" />
</RelativeLayout>
</android.support.v7.widget.CardView>
</GridLayout>
</ScrollView>
而且我已经做了一切visibility="gone"
和我有设置visibility="visible"
刷新方法:
if(Box.Accessories[0] > 0){
((CardView) findViewById(R.id.AccessoriesBoxLVL1CView)).setVisibility(View.VISIBLE);
}
if(Box.Accessories[4] > 0){
((CardView) findViewById(R.id.AccessoriesBoxLVL2CView)).setVisibility(View.VISIBLE);
}
if(Box.Accessories[8] > 0){
((CardView) findViewById(R.id.AccessoriesBoxLVL3CView)).setVisibility(View.VISIBLE);
}
if(Box.Accessories[12] > 0){
((CardView) findViewById(R.id.AccessoriesBoxLVL4CView)).setVisibility(View.VISIBLE);
}
但问题是,我可以”牛逼弄清楚如何使每个CardView
秀行(horziontaly),而不是在这样的形象自己的立场:
谢谢,将检查出:) – MsCrelix
没问题,这对你非常有用,因为适配器的使用在Android中非常基础 – bluesummers