Skip to main content

Handle Scrollable Views or Controls in another Scrollview in Android

In life of any Android developer, there are times when there is a requirement in the application to use one scrollable control inside another scrollable control. In such cases, the scrolling functionality of one or all scrollable controls gets enabled and the Android application cannot identify that scroll event of which control is to be handled first. Here, UI may get stuck in some scenarios.
The ideal behavior expected is when the user touches the parent scroll view, only the parent view’s scroll event is called and when the user scrolls the child scroll view, the child view’s scroll event is called. In our standard Android application development and implementation process it does not happen when we add scrollable control in another scrollable control.
Below is the solution to handle the scroll event of both the controls without any glitch.
Example
We have a layout that has a ScrollView as parent layout and it contains some TextViews, ImageViews and ListView as child controls.
The id of the parent ScrollView is m_parentScrollView and child ScrollView is m_childScrollView. Now in the onCreate method we have to set Touchlistener event for both the scroll views and use requestDisallowInterceptTouchEvent of the view.
For parent scroll view, below code disables the scrolling event for the child scrollable controls in the m_parentScrollView. So the user can scroll the parent scroll view and see the controls of parent scroll view without UI getting stuck,
For the child scroll view, below code disables the scroll event of parent scroll view if the user touches on child scroll view,

Comments

Popular posts from this blog

Using Edit Text IME Option in Android App

An  Editor Info  is most useful class when you have to deal with any type of user input in your  Android application . For e.g. in login/registration/search operations we can use it for more accurate keyboard input. An editor info class describes several attributes for text editing object that an input method will be directly communicating with edit text contents. Several options which we can use with  EditText IMEOption  are as follows: IME_ACTION_DONE : This action performs a “done” operation for nothing to input and the IME will be closed. IME_ACTION_GO : This action performs a “go” operation to take the user to the target of the text user typed. IME_ACTION_NEXT : This action performs a “next” operation taking the user to next field that will accept text. IME_ACTION_NONE : There is no available action. IME_ACTION_PREVIOUS : This action performs to move to the previous field after “Next” operation is performed. IME_ACTION_SEARCH : This action performs “search” operation th
Android Push Notification Using Firebase Cloud Messaging In this tutorial, I’m gonna show you how to use the push notifications in your android applications. Before the Google I/O 2016 , we were using the Google Cloud Messaging service (GCM) to send the data from the server to the clients or the android power devices but in I/O 2016, Google introduced the Firebase Cloud Messaging which is a good alternative and easier to implement. Steps to implement FireBase push notification in Android 1: Import the code of FCM   https://drive.google.com/a/edreamz.in/file/d/0B1L0RecNhNk9UDhhOXRZQjJYU0k/view?usp=sharing 2: go to    https://console.firebase.google.com/  and create a new project. 4: Now put your app name and select your country. 5: Now click on Add Firebase to Your Android App. 6: Now you have to enter your projects package name and click on ADD APP. 7:After clicking add app you will get google-services.json file. Now here Console w

Sharing Simple Data In Android

As a  Android developer , you might want to integrate android apps with each other. Do you know how that functions?  Do you possess knowledge about the way in which they communicate?  If no, then for your reference, Android apps possess the ability to integrate as well as communicate with each other. There are ways in which simple data can be sent and received between applications. This can be done by using  Intent APIs  and the  ActionProvider object . In this article we will cover three ways to share simple data. Sending Simple Data to Other Apps Receiving Simple Data from Other Apps Adding an Easy Share Action 1. Sending Simple Data to Other Apps Sending & receiving data between apps is one of the most common uses of Intent. It allows for easy and quick sharing of information. One thumb rule to remember is that while constructing an Intent, it is imperative that you specify the action you want it to trigger. There are numerous actions. This includes  ACTION_SEND . T