Android为内容(文本)设置边距/填充而不是容器(EditText)

mee*_*ian 12 android padding android-edittext

我想要做的是在THE TEXT之前添加一些上边距/填充,而不是整个容器:

代码很简单:

<EditText android:id="@+id/mightyText"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:gravity="left|top"
     android:inputType="textAutoComplete|textMultiLine"
     android:paddingLeft="20dp"
     android:paddingRight="20dp"
     android:paddingBottom="80dp"
     android:background="#fff" />
Run Code Online (Sandbox Code Playgroud)

产生产出:

期望的行为

一旦它在顶部,它的效果很好.我的侧面和顶部有相同的衬垫......


顽皮的填充;(

...但是当我滚动时,填充物仍然粘在容器上而不是上升到文本


这就是我喜欢它的方式(当没有滚动到顶部时):

适当的行为

如何更改它,因此它会滚动文本而不是始终可见?

ezp*_*zpn 21

将它放在ScrollView中,它将自动处理滚动.EditText不会对此负责,因此他的填充将按您的意愿工作.请尝试以下代码:

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

           <EditText android:id="@+id/mightyText"
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:gravity="left|top"
               android:inputType="textAutoComplete|textMultiLine"
               android:paddingLeft="20dp"
               android:paddingRight="20dp"
               android:paddingBottom="80dp"
               android:background="#fff" />

</ScrollView>
Run Code Online (Sandbox Code Playgroud)