【问题标题】:Scroll inside an EditText which is in a ScrollView [duplicate]在 ScrollView 中的 EditText 内滚动 [重复]
【发布时间】:2012-06-05 11:54:38
【问题描述】:

是否可以在 ScrollView 中的 EditText 内滚动?

<ScrollView 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
<LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">
<!-- scroll inside this EditText -->
            <EditText android:id="@+id/et_scrollhere"
                android:lines="6"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:hint="Voorbeeld"
                android:layout_margin="5dp"
                android:scrollbars="vertical"
                android:inputType="textMultiLine"/>
</LinearLayout>
</ScrollView>

或者是否可以将 EditText 以纵向模式嵌入键盘?类似于 WhatsApp,EditText 是可滚动的。

【问题讨论】:

  • 只使用 android:scrollbars="vertical" 移除 ...
  • 我还需要在我的 linearLayout 中滚动。
  • 修复 EditText 的高度而不是换行内容。
  • 您必须创建自定义 Scrollview 类,您应该在其中处理 Intercept Touch。这是参考链接HELPFUL LINK.
  • 我使用可滚动的 EditText 改变了主意。相反,我现在使用的是随文本增长的 EditText。

标签: android scroll


【解决方案1】:
EditText dwEdit = (EditText) findViewById(R.id.DwEdit);       
dwEdit.setOnTouchListener(new OnTouchListener() {

                public boolean onTouch(View view, MotionEvent event) {
                    // TODO Auto-generated method stub
                    if (view.getId() ==R.id.DwEdit) {
                        view.getParent().requestDisallowInterceptTouchEvent(true);
                        switch (event.getAction()&MotionEvent.ACTION_MASK){
                        case MotionEvent.ACTION_UP:
                            view.getParent().requestDisallowInterceptTouchEvent(false);
                            break;
                        }
                    }
                    return false;
                }
            });

在你的xml文件中

      <EditText
        android:id="@+id/DwEdit"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:minLines="10"
        android:scrollbarStyle="insideInset"
        android:scrollbars="vertical" 
        android:overScrollMode="always"
        android:inputType="textCapSentences">
        </EditText> 

希望对你有所帮助..

【讨论】:

  • 太棒了!!!效果很好!
  • 这个我找了很久
  • 对你有帮助吗?
  • 是的,非常有用
  • 效果很好,谢谢;)
猜你喜欢
  • 1970-01-01
  • 2013-05-12
  • 2020-09-04
  • 2011-02-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多