Android:Scrollview中的Webview无法正常运行

时间:2016-03-03 06:29:38

标签: android webview scrollview rich-text-editor

我正在尝试通过在web的相对布局的scrollview中嵌入webview来创建一个富文本编辑器。 webview显示带有可编辑div的html文件。

<html>

<body>
<div id="editor"  contentEditable="true"></div>
</body>
</html>

布局文件: -     

 <ScrollView
    android:id="@+id/blog_content"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="30dp"
    android:clipToPadding="false"
    android:layout_above="@+id/Footer"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
   >
    <RelativeLayout
        android:id="@+id/rlContent"
        android:layout_width="match_parent"
        android:layout_height="200px">
      <com.medicodesk.ionapp.utils.editor.RichEditor
          android:id="@+id/editor"
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          />
    </RelativeLayout>
</ScrollView>

<LinearLayout
    android:id="@+id/Footer"
    android:layout_width="match_parent"
    android:layout_height="45dp"
    android:orientation="horizontal"
    android:layout_alignParentBottom="true"
    android:visibility="invisible">

<HorizontalScrollView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@android:color/black"
    android:layout_above="@+id/blog_content"
    android:id="@+id/blog_editor_toolbar"
    >

    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        >

        <ImageButton
            android:id="@+id/action_undo"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:background="@null"
            android:contentDescription="@null"
            android:src="@drawable/undo"
            />



        <ImageButton
            android:id="@+id/action_blockquote"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:background="@null"
            android:contentDescription="@null"
            android:src="@drawable/blockquote"
            />


    </LinearLayout>
</HorizontalScrollView>
</LinearLayout>

RichEditor布局是weblayout子节点,并通过调用javascript与html交互。

问题是我无法将编辑器窗口高度设置为适合android移动版面大小。编辑器将处于显示模式,显示用户输入的所有内容,或者将处于编辑模式,键盘布局从底部弹出。编辑器应该只能垂直滚动。我不清楚我是否应该依赖html滚动或android滚动视图来获得平滑滚动。

请帮帮我。

1 个答案:

答案 0 :(得分:0)

尝试更改XML布局,如下所示:

<?xml version="1.0" encoding="utf-8"?>

<ScrollView
    android:id="@+id/blog_content"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_above="@+id/Footer"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:clipToPadding="false"
    android:paddingBottom="30dp">

    <RelativeLayout
        android:id="@+id/rlContent"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <com.medicodesk.ionapp.utils.editor.RichEditor
            android:id="@+id/editor"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
    </RelativeLayout>
</ScrollView>

<LinearLayout
    android:id="@+id/Footer"
    android:layout_width="match_parent"
    android:layout_height="45dp"
    android:layout_alignParentBottom="true"
    android:orientation="horizontal"
    android:visibility="invisible">

    <HorizontalScrollView
        android:id="@+id/blog_editor_toolbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_above="@+id/blog_content"
        android:background="@android:color/black">

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal">

            <ImageButton
                android:id="@+id/action_undo"
                android:layout_width="48dp"
                android:layout_height="48dp"
                android:background="@null"
                android:contentDescription="@null"
                android:src="@drawable/undo" />


            <ImageButton
                android:id="@+id/action_blockquote"
                android:layout_width="48dp"
                android:layout_height="48dp"
                android:background="@null"
                android:contentDescription="@null"
                android:src="@drawable/blockquote" />


        </LinearLayout>
    </HorizontalScrollView>
</LinearLayout>

我希望它会帮助你。