How to make layout scroll past its content in Android? -


in ios apps can make if scroll down bottom of page , keep scrolling see empty space. if let go pull bottom of content @ bottom of screen if being held spring. in fact, assume default behavior because happens often.

i same thing in android, because activity has standard floating action button in bottom right corner , it's blocking of content. if scroll past content, able see of it.

as example, made new android studio project blank activity (with floating action button) , modified content_main.xml adding scrollview , lots of lorem ipsum there scroll:

<?xml version="1.0" encoding="utf-8"?> <relativelayout xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:tools="http://schemas.android.com/tools"     xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent"     android:layout_height="match_parent" android:paddingleft="@dimen/activity_horizontal_margin"     android:paddingright="@dimen/activity_horizontal_margin"     android:paddingtop="@dimen/activity_vertical_margin"     android:paddingbottom="@dimen/activity_vertical_margin"     app:layout_behavior="@string/appbar_scrolling_view_behavior"     tools:showin="@layout/activity_main" tools:context=".mainactivity">     <scrollview         android:layout_width="fill_parent"         android:layout_height="fill_parent">         <textview android:text="lorem ipsum dolor sit amet, consectetur adipiscing elit. ut venenatis vulputate urna, ac tempor est laoreet ac. ut vitae auctor risus, sit amet iaculis est. vestibulum vitae velit eget lorem laoreet aliquet. praesent non suscipit odio, in viverra nisl. mauris pharetra turpis lorem, ac ultricies lacus sagittis et. praesent quis dapibus quam. sed commodo leo ac ornare mollis. cras sollicitudin magna risus, quis ullamcorper neque ultricies non. aliquam dapibus ullamcorper lorem, et mattis sem tristique ut. nam faucibus pharetra metus nec rhoncus. quisque aliquet id odio in sodales. suspendisse venenatis arcu eu imperdiet dictum.      sed elementum sem massa, dignissim egestas mauris faucibus in. suspendisse potenti. sed ac facilisis tortor. lorem ipsum dolor sit amet, consectetur adipiscing elit. sed gravida ex eget nibh faucibus, ac volutpat nulla gravida. vestibulum placerat vel urna ac pellentesque. pellentesque porta orci leo, nec commodo tortor luctus quis. suspendisse non metus sit amet mi congue hendrerit.      vivamus ex metus, vestibulum quis vulputate ac, tincidunt nec enim. fusce vitae ligula eros. nunc ut gravida odio. praesent ultrices massa in purus sodales, quis gravida lectus consectetur. curabitur quis dignissim sem. proin posuere facilisis nisl, vulputate ultrices mi tempor non. integer tristique efficitur urna, @ lobortis dolor rutrum eu. donec vel sem pretium, commodo velit quis, hendrerit quam. cras hendrerit iaculis augue, ut vestibulum arcu aliquam ut. in suscipit et enim condimentum convallis. in vitae nisi quis felis tristique rutrum sed elementum eros. curabitur lobortis porttitor interdum. donec elementum tempus est, sed ultricies est tempus eu. proin laoreet, turpis sodales finibus ultrices, odio est efficitur ex, eget convallis mauris ipsum sed nunc.      duis sodales tempor volutpat. nulla laoreet condimentum aliquam. sed lacinia molestie eros vel imperdiet. donec mollis tempor enim, vitae pellentesque odio vestibulum ac. in maximus hendrerit enim, eu bibendum urna interdum sed. praesent condimentum sit amet turpis ut suscipit. in condimentum odio. duis metus metus, sagittis et faucibus a, elementum sit amet elit. duis sit amet auctor odio.      nullam vitae dictum est. nunc suscipit, lectus sit amet blandit posuere, arcu dolor porttitor dolor, et volutpat tortor tortor sed leo. nulla facilisi. curabitur vestibulum vestibulum ipsum, ut iaculis mi luctus placerat. sed lobortis eu nisi eget ultrices. pellentesque efficitur mi non massa condimentum aliquet. ut ac dolor eget dolor accumsan scelerisque pharetra non erat. nullam semper molestie ultrices. nunc et auctor turpis. nullam fermentum dolor eu mi pellentesque finibus. vestibulum eleifend varius maximus. donec id bibendum arcu. curabitur lacinia lorem sed ex blandit, in lacinia orci tempus. ut bibendum luctus consectetur. mauris sed rutrum nisi. cras facilisis nibh sed consequat facilisis." android:layout_width="wrap_content"             android:layout_height="wrap_content" />      </scrollview> </relativelayout> 

the result, can see, hides content behind button:

enter image description here

what canonical way fix problem?

you can trick. done 100% work

set id scrollview this

    <scrollview     android:layout_width="fill_parent"     android:layout_height="fill_parent"     android:id="@+id/sv"> 

then create object , set listener in activitycalss

floatingactionbutton fab; @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_main);     toolbar toolbar = (toolbar) findviewbyid(r.id.toolbar);     setsupportactionbar(toolbar);      fab = (floatingactionbutton) findviewbyid(r.id.fab);     scrollview sv = (scrollview) findviewbyid(r.id.sv);      sv.setontouchlistener(new view.ontouchlistener() {         @override         public boolean ontouch(view view, motionevent motionevent) {             if(motionevent.getaction() == motionevent.action_down){                 // want                 fab.setvisibility(view.invisible);                 return true;             }else if(motionevent.getaction() == motionevent.action_up){                 // want                 fab.setvisibility(view.visible);                 return true;             }              return false;         }     }); } 

when scroll hide button , when don't scroll visible ...


Comments

Popular posts from this blog

mysql - Dreamhost PyCharm Django Python 3 Launching a Site -

java - Sending SMS with SMSLib and Web Services -

java - How to resolve The method toString() in the type Object is not applicable for the arguments (InputStream) -