点击EDITTEXT嵌套滚动型内滚动外滚动视图(Clicking on Edittext insid

2019-10-29 13:43发布

我有一个包含各种布局父horizo​​ntalScrollview。 在一个特定的布局有一个滚动视图。 内部的滚动型存在的EditText。 现在,当我点击任何的EditText的输入,水平滚动视图自动滚动屏幕到一些其他的布局,我无法看到当前的积极布局(含滚动视图)。

我知道嵌套scrollviews是一个不好的编码习惯,但我不能在这种情况下改变它会有大量的返工。 对此有什么解决办法。

以下是包含horizo​​ntalscrollview主要布局的XML代码: -

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<HorizontalScrollView
    android:id="@+id/CloudHScrollView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />
</RelativeLayout>

而下面是被在某个阶段后插入子布局之一的代码。 该布局包含具有edittexts滚动视图: -

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<ScrollView
    android:id="@+id/scrollview"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="0dp"
    android:background="@drawable/blueoverlay"
    android:fillViewport="true" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:paddingBottom="300dp"
        android:paddingTop="90dp" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >

            <EditText
                android:id="@+id/edittext"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="@null"
                android:gravity="right"
                android:singleLine="true"
                android:textAppearance="?android:attr/textAppearanceSmall"
                android:textColor="@android:color/black" />
        </LinearLayout>
    </LinearLayout>
</ScrollView>

Answer 1:

我不知道这是否会工作,但你可以尝试延伸的外部滚动型类和处理你自己的onScroll事件。

看这里:

听滚动事件horizo​​ntalscrollview机器人

安卓:如何监听滚动事件?



Answer 2:

我有同样的问题,通过添加以下到AndroidManifest.xml文件进行相应的活动来解决它。

android:windowSoftInputMode="adjustResize"


文章来源: Clicking on Edittext inside nested Scrollview scrolls outer scrollview