我正在使用ScrollView
进行tablelayout。在GridView
代码TableLayout
中也有ScrollView
但我没有获得GridView
GridView
。请帮助我。问题出现在 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scrollbars="horizontal" >
<TableLayout
android:id="@+id/TableLayout1"
android:layout_width="532dp"
android:layout_height="257dp"
android:layout_gravity="right"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:scrollbarAlwaysDrawVerticalTrack="true"
tools:context=".Intcalc" >
<TableRow
android:id="@+id/tableRow2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="10dp" >
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="To Date"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/edttodate"
android:layout_width="160dp"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="date"
android:onClick="selectDate" />
<ImageButton
android:id="@+id/imageButton2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="left"
android:onClick="selectDate"
android:src="@android:drawable/btn_star" />
</TableRow>
<GridView
android:id="@+id/gridView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:numColumns="3"
>
</GridView>
</TableLayout>
</ScrollView>
。
{{1}}
答案 0 :(得分:0)
Gridview已经有了自己的滚动条,所以如果你再次将它包围在另一个滚动条中,它将会很痛苦。
答案 1 :(得分:0)
你永远不会在android中使用两个滚动的第一件事。滚动视图也提供滚动和网格视图也提供滚动。在您的情况下,您需要使用滚动视图或网格视图来改善您的逻辑。
答案 2 :(得分:0)
答案 3 :(得分:0)
我正在使用此逻辑感谢您的帮助
GridView gridView=(GridView)findViewById(R.id.gridView1);
gridView.setOnTouchListener(new GridView.OnTouchListener()
{
public boolean onTouch(View v, MotionEvent event)
{
int action = event.getAction();
switch (action) {
case MotionEvent.ACTION_DOWN:
// Disallow ScrollView to intercept touch events.
v.getParent().requestDisallowInterceptTouchEvent(true);
break;
case MotionEvent.ACTION_UP:
// Allow ScrollView to intercept touch events.
v.getParent().requestDisallowInterceptTouchEvent(false);
break;
}
// Handle ListView touch events.
v.onTouchEvent(event);
return true;
}
});