我在ScrollerView里面写了一个EditText,发现当EditText显示多行的时候,不能上下滚动了。
如果去掉ScrollerView,就能上下滚动了。我觉得ScrollerView把EditText的滚动事件给截取了。
是不是这样?有什么办法解决?谢谢。

解决方案 »

  1.   

    能把你的layout中相关xml内容,和java代码中相关内容发一下吗?
      

  2.   

    Java代码public class ScrollViewTest extends Activity {
    private EditText t;
    String s = "北京欢迎你,我家大门常打开,开怀容纳天地1 "+"\n"+
    "北京欢迎你,我家大门常打开,开怀容纳天地 2"+"\n"+
    "北京欢迎你,我家大门常打开,开怀容纳天地 3"+"\n"+
    "北京欢迎你,我家大门常打开,开怀容纳天地 4"+"\n"+
    "北京欢迎你,我家大门常打开,开怀容纳天地 5"+"\n"+
    "北京欢迎你,我家大门常打开,开怀容纳天地 6"+"\n"+
    "北京欢迎你,我家大门常打开,开怀容纳天地 7"+"\n";
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.scroll_text);
            t = (EditText)findViewById(R.id.sc[code=XML]roll);
            t.setText(s);
        }
    }
    [/code]xml:<?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

    <ScrollView android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <EditText android:id="@+id/scroll"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:textSize="18sp"
        android:lines="3"/>
    </ScrollView>

    </LinearLayout>
    请帮忙看下。谢谢。
      

  3.   

    你的EditText中的内容能随意滚动?应该不能吧。它的滚动事件被scrollview截获了
      

  4.   

    恩,没错是截取了,你可以用horizonScrollView,方向不一致就行
      

  5.   

    解决了,忘了贴上来了。解决的方法是自定义一个类,继承ScrollView,重写其方法:        @Override
    public boolean onInterceptTouchEvent(MotionEvent ev) {
    //System.out.println("MyScrollView-->onInterceptTouchEvent");
    return false;
    }这样就好了。