如何使EditText在可滚动的LinearLayout中可滚动?

时间:2011-12-30 18:55:23

标签: android android-layout scrollview android-edittext android-scrollview

LinearLayout滚动但EditText不滚动。

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="top"
        android:orientation="vertical" >


        <EditText
            android:id="@+id/messageeditor_editText2"
            android:layout_width="match_parent"
            android:layout_height="200dp"/>

    </LinearLayout>
</ScrollView>

我将EditText设置为可滚动:

editText.setMovementMethod(new ScrollingMovementMethod());

修改

我尝试执行以下操作,但不知道如何禁用我的scrollview,这是我的edittext的焦点更改侦听器:

private OnFocusChangeListener focuschangelistener = new OnFocusChangeListener(){

    @Override
    public void onFocusChange(View arg0, boolean arg1) {
        if(arg1){
            sv.setEnabled(false);
        }else{
        }           
    }

};

2 个答案:

答案 0 :(得分:2)

你找到了解决办法吗? 有人说下面的代码可以解决问题

final EditText myEditText = (EditText) findViewById(R.id.EditText01);
myEditText.setMovementMethod(new ScrollingMovementMethod());

答案 1 :(得分:1)

您已经给出200dp的修正高度,请将其更改为match_parent或增加它。然后检查。

它会按你的意愿工作。

随意发表评论。