如何使包裹在另一个滚动视图中的“编辑文本可滚动”?

时间:2019-07-13 13:18:09

标签: java android android-edittext scrollbar

我设计了一个笔记记录界面,其中有两个编辑文本,一个用于标题,另一个用于描述。我希望描述的编辑文本采用无限文本,但是每当我在其中添加长文本时,该文本就会从顶部或底部隐藏。 我已经尝试了所有解决方案,但是徒劳。.请帮助我!

当我设置固定高度时,长文本从顶部和底部隐藏,而当我将高度作为环绕内容时,文本则从底部隐藏。 由于活动底部有一个水平滚动条,因此我无法将此编辑文本设置为“长文本”。 整个代码如下。我必须上传整个代码才能更好地理解。


<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".TextNotes"
    android:id="@+id/drawerText">

    <RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

        <android.support.v7.widget.Toolbar
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            app:titleTextColor="@color/logoColor"
            app:popupTheme="@style/AppTheme.PopupOverlay"
            android:background="#FAFAFA"
            android:theme="@style/AppTheme.AppBarOverlay"
            android:id="@+id/toolbars">
            <RelativeLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content">

            <android.support.v7.widget.AppCompatTextView
                android:id="@+id/toolbar_title_txt"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:text="All Notes"
                android:gravity="center"
                android:textColor="@color/logoColor"
                android:textSize="18sp"
                android:textStyle="bold"
                android:fontFamily="@font/cour"
                android:layout_marginStart="15dp"
                android:layout_toRightOf="@id/toolbar_button_text"/>

            <ImageButton
                android:id="@+id/toolbar_button_text"
                style="@style/Widget.AppCompat.Button.Borderless"
                android:layout_width="30dp"
                android:layout_height="match_parent"
                android:layout_alignParentStart="true"
                android:layout_marginStart="-7dp"
                app:srcCompat="@drawable/ic_tick_green" />
            </RelativeLayout>
        </android.support.v7.widget.Toolbar>
        <com.miguelcatalan.materialsearchview.MaterialSearchView
            android:id="@+id/search_view"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

        <ScrollView
            android:layout_below="@+id/toolbars"
            android:layout_width="match_parent"
            android:id="@+id/scrollV"
            android:layout_height="wrap_content">
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical">
                <android.support.v7.widget.AppCompatEditText
                    android:id="@+id/edit"
                    android:layout_width="match_parent"
                    android:layout_height="40dp"
                    android:textSize="20sp"
                    android:gravity="center_vertical"
                    android:hint="Note Title"
                    android:background="@null"
                    android:textColor="@color/colorPrimary"
                    android:textCursorDrawable="@color/colorPrimary"
                    android:fontFamily="@font/cour"
                    android:paddingStart="15dp"
                    android:layout_below="@+id/toolbars"/>
                <RelativeLayout
                    android:layout_below="@+id/edit"
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:id="@+id/relativeLayout"
                    android:layout_marginTop="10dp"
                    android:gravity="center_vertical|center_horizontal|center"
                    android:orientation="horizontal">
                    <ImageView
                        android:id="@+id/imgBook"
                        android:layout_width="20dp"
                        android:layout_height="20dp"
                        android:layout_marginLeft="10dp"
                        android:layout_gravity="center_vertical"
                        android:src="@drawable/ic_book"
                        android:layout_weight="1"/>
                    <Spinner
                        android:id="@+id/spinner"
                        android:layout_width="230dp"
                        android:layout_height="22dp"
                        android:layout_marginLeft="15dp"
                        android:layout_toRightOf="@id/imgBook"
                        android:layout_gravity="center_vertical|center"
                        android:padding="2dp"
                        android:gravity="center_vertical|center"
                        android:textSize="17sp"
                        />
                    <TextView
                        android:layout_alignParentTop="true"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:id="@+id/txtChk"
                        android:text="Saved"
                        android:visibility="invisible"/>


                    <ImageView
                        android:id="@+id/imgAbout"
                        android:layout_width="23dp"
                        android:layout_height="20dp"
                        android:layout_alignParentEnd="true"
                        android:layout_marginEnd="10dp"
                        android:foregroundGravity="center_vertical"
                        android:layout_gravity="center_vertical"
                        android:src="@drawable/ic_about_grey"
                        />

                    <ImageView
                        android:id="@+id/imgReminderTxt"
                        android:layout_width="23dp"
                        android:layout_height="20dp"
                        android:layout_toLeftOf="@+id/imgAbout"
                        android:layout_marginEnd="10dp"
                        android:src="@drawable/ic_reminder" />
                </RelativeLayout>
                <View
                    android:id="@+id/line"
                    android:layout_width="match_parent"
                    android:layout_height="0.5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="10dp"
                    android:layout_below="@id/relativeLayout"
                    android:background="@color/grey"/>
                <android.support.v7.widget.RecyclerView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:id="@+id/txtRecycler"
                    android:visibility="gone"
                    android:layout_below="@id/line"
                    android:layout_marginTop="8dp">

                </android.support.v7.widget.RecyclerView>
                <android.support.v7.widget.RecyclerView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:id="@+id/imgRecycler"
                    android:visibility="gone"
                    android:layout_below="@id/txtRecycler"
                    android:layout_marginTop="8dp">

                </android.support.v7.widget.RecyclerView>
                <android.support.v7.widget.RecyclerView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:id="@+id/TodoRecycler"
                    android:visibility="gone"
                    android:layout_below="@id/imgRecycler"
                    android:layout_marginTop="8dp">

                </android.support.v7.widget.RecyclerView>
                <TextView
    android:id="@+id/charcTxt"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:visibility="gone"/>
                <TextView
                    android:id="@+id/wordsTxt"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:visibility="gone"
                    />
//Below is the description edit text that I want to make scrollable
                    <android.support.v7.widget.AppCompatEditText
                        android:id="@+id/text_write"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_below="@id/TodoRecycler"
                        android:background="@null"
                        android:fontFamily="@font/calibri"
                        android:gravity="top"
                        android:hint="What is on your mind?"
                        android:paddingEnd="15dp"
                        android:paddingStart="15dp"
                        android:paddingTop="20dp"
                        android:paddingBottom="15dp"
                        android:textColor="#000"
                        android:textSize="17sp"
//Used below lines to make edit text scrollable but no success
                        android:scrollHorizontally="false"
                        android:overScrollMode="always"
                        android:scrollbarStyle="insideInset"
                        android:selectAllOnFocus="true"
                        android:foregroundGravity="top"
                        android:scrollbars="vertical"
                        android:inputType="textMultiLine"
                        android:enabled="true"
                        android:isScrollContainer="true"
                        android:focusable="true"
                        />
            </LinearLayout>
        </ScrollView>

        <HorizontalScrollView
            android:id="@+id/horSview"
            android:layout_alignParentBottom="true"
            android:layout_width="match_parent"
            android:layout_height="45dp">
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="45dp"
                android:background="@color/grey_scroll"
                android:gravity="center"
                android:orientation="horizontal">
                <ImageButton
                    android:id="@+id/bold"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_bold_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="61dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>
                <ImageButton
                    android:id="@+id/italic"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_italic_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>
                <ImageButton
                    android:id="@+id/underline"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_underline_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>
                <ImageButton
                    android:id="@+id/strike"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_strike_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>
                <ImageButton
                    android:id="@+id/highlight"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_a_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>
                <ImageButton
                    android:id="@+id/bullet"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_bullet_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>
                <ImageButton
                    android:id="@+id/bulletNumber"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_bullet_one_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>
                <ImageButton
                    android:id="@+id/toDoList"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_list_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>
                <ImageButton
                    android:id="@+id/leftIndent"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_indent_right_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>
                <ImageButton
                    android:id="@+id/RightIndent"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_indent_left_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>
                <ImageButton
                    android:id="@+id/moveBottom"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_align_bottom_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>
                <ImageButton
                    android:id="@+id/moveTop"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_align_top_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>
                <ImageButton
                    android:id="@+id/moveto"
                    android:layout_width="45dp"
                    android:layout_height="45dp"
                    android:src="@drawable/ic_scroll_list_white"
                    style="@style/Widget.AppCompat.Button.Borderless"
                    android:layout_marginTop="5dp"
                    android:layout_marginBottom="5dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginEnd="17dp"
                    android:layout_weight="1"/>


            </LinearLayout>

        </HorizontalScrollView>
        <ImageView
            android:id="@+id/image_scroll"
            android:layout_width="60dp"
            android:layout_height="45dp"
            android:src="@drawable/scroll"
            android:layout_alignParentBottom="true"
            android:layout_alignParentRight="true"/>
        <ImageView
            android:id="@+id/image_scroll_right"
            android:layout_width="45dp"
            android:layout_height="45dp"
            android:src="@drawable/ic_scroll_right_green"
            android:layout_alignParentBottom="true"
            android:layout_alignParentRight="true"/>
        <ImageView
            android:id="@+id/image_scroll2"
            android:layout_width="60dp"
            android:layout_height="45dp"
            android:src="@drawable/scroll_left"
            android:layout_alignParentBottom="true"
            android:layout_alignParentLeft="true"/>
        <ImageView
            android:id="@+id/image_scroll_left"
            android:layout_width="45dp"
            android:layout_height="45dp"
            android:src="@drawable/ic_scroll_left_green"
            android:layout_alignParentBottom="true"
            android:layout_alignParentLeft="true"/>

    </RelativeLayout>

    <android.support.design.widget.NavigationView
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="end"
        android:id="@+id/nav_view_text"
        android:theme="@style/AppBaseTheme"
        app:menu="@menu/text_drawer_menu"
        >
    </android.support.design.widget.NavigationView>

</android.support.v4.widget.DrawerLayout>




我希望每当我放置长文本时,它都应滚动,并且整个文本(从顶部和底部)应显示在底部水平滚动条上方。 预先感谢

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:0)

要滚动的textview,应在其周围包装LinearLayout / Relativelayout,然后将LinearLayout / Relativelayout包装到滚动视图中。应该可以。

答案 1 :(得分:0)

您必须设置编辑文本的固定高度,然后使用以下代码进行滚动:

EditText editText = findViewById(R.id.edit);
editText.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
    if (v.getId() == R.id.edit) {
        v.getParent().requestDisallowInterceptTouchEvent(true);
        switch (event.getAction() & MotionEvent.ACTION_MASK) {
        case MotionEvent.ACTION_UP:
            v.getParent().requestDisallowInterceptTouchEvent(false);
            break;
        }
       }
       return false;
    }
 });