我的活动包含scrollView> linearLayout> edittext 我想禁用ScrollView的滚动,以便用户可以根据需要输入文本。 我尝试了很多解决方案,但没有一个适合我: XMLFILE:
<LinearLayout 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:orientation="vertical"
tools:context="${relativePackage}.${activityClass}" >
<include
android:id="@+id/logout_toolbar"
layout="@layout/logout_toolbar"
android:elevation="5sp"
></include>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scrollView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:focusable="true"
android:focusableInTouchMode="true"
android:weightSum="1">
<include
android:id="@+id/description_toolbar"
layout="@layout/description_toolbar"
android:elevation="5sp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"></include>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/addDescription"
android:lines="10"
android:maxLines="400"
android:gravity="top|left"
android:layout_gravity="center_horizontal"
android:layout_marginTop="40sp"
android:scrollbarStyle="insideInset"
android:scrollbars="vertical"
android:hint="Add your description here." />
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Choice Number 01 "
android:id="@+id/switch1"
android:layout_gravity="center_horizontal"
android:layout_marginTop="30sp"
android:textOff="No"
android:textOn="Yes"
android:textSize="15sp" />
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Choice Number 02 "
android:id="@+id/switch2"
android:layout_gravity="center_horizontal"
android:layout_marginTop="15sp"
android:textOff="No"
android:textOn="Yes"
android:textSize="15sp"
android:checked="false" />
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Choice Number 03 "
android:id="@+id/switch3"
android:layout_gravity="center_horizontal"
android:layout_marginTop="15sp"
android:textOff="No"
android:textOn="Yes"
android:textSize="15sp"
android:checked="false" />
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Choice Number 04 "
android:id="@+id/switch4"
android:layout_gravity="center_horizontal"
android:layout_marginTop="15sp"
android:textOff="No"
android:textOn="Yes"
android:textSize="15sp"
android:checked="false" />
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Choice Number 05 "
android:id="@+id/switch5"
android:layout_gravity="center_horizontal"
android:layout_marginTop="15sp"
android:textOff="No"
android:textOn="Yes"
android:textSize="15sp"
android:checked="false" />
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Choice Number 06 "
android:id="@+id/switch6"
android:layout_gravity="center_horizontal"
android:layout_marginTop="15sp"
android:textOff="No"
android:textOn="Yes"
android:textSize="15sp"
android:checked="false" />
<Button
android:layout_width="188dp"
android:layout_height="wrap_content"
android:text="Next"
android:id="@+id/btnNext"
android:layout_gravity="center_horizontal"
android:layout_marginTop="15sp"
android:layout_marginBottom="30sp" />
</LinearLayout>
</ScrollView>
</LinearLayout>
JAVAfile:
@Override
public boolean onTouch(View v, MotionEvent event) {
if (v.getId() == R.id.addDescription) {
v.getParent().requestDisallowInterceptTouchEvent(true);
switch (event.getAction()&MotionEvent.ACTION_MASK){
case MotionEvent.ACTION_UP:
v.getParent().requestDisallowInterceptTouchEvent(false);
break;
}
}
return false;
}
}
截图: