我知道在Android中我们可以使用函数setCompoundDrawables(..)来添加drawable。
我的问题是我的EditText是多行的,我想把drawable放在EditText的右上角。文本必须包装,而不是在drawable下。但是在setCompoundDrawables()函数中使用,只能选择将drawable放在特定的一面。
修改
我的布局xml:
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<EditText
android:id="@+id/newpost_textbox_content"
android:layout_width="fill_parent"
android:layout_height="500dp"
android:inputType="textMultiLine"
android:gravity="top"
android:maxLines="10"/>
<ImageView
android:id="@+id/newpost_image"
android:layout_width="150dp"
android:layout_height="200dp"
android:layout_alignTop="@+id/newpost_textbox_content"
android:layout_alignRight="@+id/newpost_textbox_content"/>
</RelativeLayout>
问题是文本将隐藏在图像下方,用户无法看到。
答案 0 :(得分:0)
您是否正在寻找类似的东西?
使用LinearLayout很简单:
scrollToBottom = () => {
this.messagesEnd.scrollIntoView({ block: "end"});
}
componentDidUpdate() {
if(this.props.scrollDown){
this.scrollToBottom();
}
}
render() {
return(
<div
className="customerChatHistory"
ref={(el) => { this.messagesEnd = el }}>
{ this.props.children }
</div>
)
}
编辑: 如果图像应该在EditText内
使用以下代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="match_parent"
android:gravity="end"
android:layout_height="wrap_content">
<ImageView
android:layout_width="30dp"
android:layout_height="30dp"
android:src="@mipmap/ic_launcher"/>
</LinearLayout>
<EditText
android:background="#00ff00"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Line 1 of green Edit Text
Line 2
Line 3
Line 4
..."/>
</LinearLayout>
答案 1 :(得分:0)
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp"
>
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColorHint="#d3d3d3"
android:id="@+id/et_hint2">
<EditText
android:id="@+id/et_details"
android:layout_width="fill_parent"
android:layout_height="160dp"
android:background="@android:color/transparent"
android:bottomLeftRadius="10dp"
android:bottomRightRadius="50dp"
android:gravity="start"
android:importantForAutofill="noExcludeDescendants"
android:text="wekrbiweubruiweobrfuiwegfiewrbgiuer gurwe bgiewbgu9w engi weig weoihg iwhe gihwebgihwe ghewg hegb iher giewrg iew giwe giwgiwbgiwbgiwbiwbgwijbgiuwbgiwg"
android:paddingLeft="10dp"
android:paddingRight="50dp"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:textColor="#000000"
android:textColorHint="#000000"
android:inputType="textMultiLine"
android:textSize="14sp"
android:lines="8"
android:maxLines="10"
android:topLeftRadius="10dp"
android:topRightRadius="10dp"
android:imeOptions="flagNavigateNext"
android:singleLine="false"/>
</android.support.design.widget.TextInputLayout>
<ImageButton
android:id="@+id/img_camera"
android:layout_width="40dp"
android:layout_height="27dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_marginTop="20dp"
android:layout_marginRight="20dp"
android:background="@drawable/camera" />
</RelativeLayout>