I have a problem that error message displayed by edit text overlaps other components on layout.

Does anybody have an idead how to display error message behind top and bottom layouts?
Little bit about structure: Top red and bottom grey parts Linear Layouts. Main middle content is Frame Layout, whose content is handled by application. In this case there are several edit texts wrapped in Scroll View.
<android.support.v4.widget.CustomDrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
tools:context=".MainActivity">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:fitsSystemWindows="true">
<com.custom.TitlebarLayout
android:id="@+id/titlebarLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"/>
<FrameLayout
android:id="@+id/contentContainer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
android:layout_gravity="top"/>
<com.custom.ButtonsToolbarLayout
android:id="@+id/buttonsToolbarLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:gravity="center_vertical|left"
android:orientation="horizontal"/>
</RelativeLayout>
Inside contentContainer is below layout:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:msa="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".fragment.addressedit.AddressEditFragment"
android:id="@+id/frame_layout_address_edit">
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scrollview_address_dialog"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:isScrollContainer="true"
android:orientation="horizontal">
<com.custom.editview.EditViewLayout
android:id="@+id/edittext_address_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/linearlayout_address_top"
android:hint="Name"
android:maxLength="30"
android:maxLines="1"
android:singleLine="true"
android:inputType="textCapCharacters"
android:tag="etx_name1"/>
<com.custom.editview.EditViewLayout
android:id="@+id/edittext_address_name2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/edittext_address_name"
android:hint="Name2"
android:maxLength="30"
android:maxLines="1"
android:singleLine="true"
android:inputType="textCapCharacters"
android:tag="etx_name2"/>
<com.custom.editview.EditViewLayout
android:id="@+id/edittext_address_street"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/edittext_address_name2"
android:hint="Street"
android:maxLength="30"
android:maxLines="1"
android:singleLine="true"
android:inputType="textCapCharacters"
android:tag="etx_street"/>
<com.custom.editview.EditViewLayout
android:id="@+id/edittext_address_houseno"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/edittext_address_street"
android:hint="House No."
android:maxLength="8"
android:maxLines="1"
android:singleLine="true"
android:inputType="number"
msa:alternativeInputType="textNoSuggestions"
android:tag="etx_house_no"/>
<com.custom.editview.EditViewLayout
android:id="@+id/edittext_address_postcode"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/edittext_address_houseno"
android:hint="Postcode"
android:maxLength="10"
android:maxLines="1"
android:singleLine="true"
android:inputType="textPostalAddress"
android:tag="etx_postcode1"
msa:validation="postcode"/>
<com.custom.editview.EditViewLayout
android:id="@+id/edittext_address_city"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/edittext_address_postcode"
android:hint="City"
android:maxLength="30"
android:maxLines="1"
android:singleLine="true"
android:inputType="textCapCharacters"
android:tag="etx_city"/>
<com.custom.editview.EditViewLayout
android:id="@+id/edittext_address_country"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/edittext_address_city"
android:hint="Country"
android:maxLength="5"
android:maxLines="1"
android:singleLine="true"
android:inputType="textCapCharacters"
android:tag="etx_country"/>
<com.custom.editview.EditViewLayout
android:id="@+id/edittext_address_phone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/edittext_address_country"
android:hint="Phone"
android:maxLength="20"
android:maxLines="1"
android:singleLine="true"
android:inputType="phone"
android:tag="etx_phone1"/>
</RelativeLayout>
</ScrollView>
Just do a simple tweak and you're good to go..
scrollView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
addressName.clearFocus();
addressName2.clearFocus();
houseNo.clearFocus();
phone.clearFocus();
return false;
}
})
;
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With