我一直在尝试制作一个左右两个静态列的表(因此它们始终可见)。左侧布局包含标签,右侧包含总计。滚动视图包含所有主要内容。可能总共有232个textview一直到24个。我读到GridView是最适合内存的,但不是创建可变数量的列和行,不会水平滚动,并将包装自己的内容以适合width ...我需要新的列来保持增加宽度。 gridview是否能够以这种方式使用?
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="counter.prebuild.CreateNewCourseCard">
<Button
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/left"
android:id="@+id/cardLeft"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<Button
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/right"
android:id="@+id/cardRight"
android:layout_alignParentBottom="true"
android:layout_toRightOf="@+id/space2" />
<Button
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/minus"
android:id="@+id/cardMinus"
android:layout_alignParentBottom="true"
android:layout_toLeftOf="@+id/cardSelectNum" />
<TextView
android:layout_width="70dp"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/score_num_tile"
android:id="@+id/cardSelectNum"
android:gravity="center_vertical|center_horizontal"
android:layout_centerHorizontal="true"
android:layout_alignTop="@+id/cardMinus"
android:layout_alignParentBottom="true" />
<Space
android:layout_width="35dp"
android:layout_height="20dp"
android:id="@+id/space4"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
<Button
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/up"
android:id="@+id/cardUp"
android:layout_alignParentBottom="true"
android:layout_alignRight="@+id/space4"
android:layout_alignEnd="@+id/space4" />
<Button
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/down"
android:id="@+id/cardDown"
android:layout_alignParentBottom="true"
android:layout_toLeftOf="@+id/space5" />
<Button
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/plus"
android:id="@+id/cardPlus"
android:layout_alignParentBottom="true"
android:layout_toRightOf="@+id/cardSelectNum" />
<Space
android:layout_width="70dp"
android:layout_height="20dp"
android:id="@+id/space3"
android:layout_alignParentBottom="true"
android:layout_toLeftOf="@+id/cardDown" />
<Space
android:layout_width="25dp"
android:layout_height="30dp"
android:id="@+id/space5"
android:layout_alignParentBottom="true"
android:layout_toLeftOf="@+id/cardUp" />
<Space
android:layout_width="70dp"
android:layout_height="20dp"
android:id="@+id/space6"
android:layout_alignParentBottom="true"
android:layout_toRightOf="@+id/cardRight" />
<Space
android:layout_width="25dp"
android:layout_height="30dp"
android:id="@+id/space2"
android:layout_alignParentBottom="true"
android:layout_toRightOf="@+id/cardLeft" />
<View
android:layout_width="fill_parent"
android:layout_height="2dp"
android:id="@+id/imageView"
android:contentDescription="@string/blue_bar"
android:layout_marginBottom="2dp"
android:layout_above="@+id/cardSelectNum"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:background="#ff3463ff" />
<LinearLayout
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_above="@+id/imageView"
android:id="@+id/cardLeftLayout"
android:paddingRight="2dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="LeftLayout"
android:id="@+id/leftLayout" />
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_above="@+id/imageView"
android:id="@+id/cardRightLayout"
android:paddingLeft="2dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="RightLayout"
android:id="@+id/rightlayout" />
</LinearLayout>
<HorizontalScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/cardCenterLayout"
android:layout_alignTop="@+id/cardLeftLayout"
android:layout_above="@+id/imageView"
android:layout_toLeftOf="@+id/cardRightLayout"
android:layout_toRightOf="@+id/cardLeftLayout">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="ScrollView"
android:id="@+id/scrollViewText" />
</HorizontalScrollView>
答案 0 :(得分:0)
我刚刚使用two-way-gridview并在适配器中设置了this.notifyDataSetChanged()
的公共函数。它将以任何其他listview类型视图工作的方式工作,除了它不会在没有外部库的情况下水平滚动。
对于静态左列和右列,我只是设置一个单独的布局,其中的视图类似于我在gridview中显示的视图。