Yes, I have worked on the user interfaces. So I'll take an example where I face challenges to update the UI based on the requirement. So what happens is, there is a progress bar. So we need to implement a progress bar, where it should on a particular screen, okay, which also has a back button. So what happens is when the progress bar is set, we receive the values in our dynamic XML. So based on those XML, we can identify that what will be the installation time and what will be the download time and what will be the activation time. So for example, there's an installation time given. So I need now I need to run that seek bar, progress bar, sorry, based on the time given to me, and that progress bar should continue, okay. So now suppose if the progress bar is set for suppose the installation time is given as two minutes, okay, so now my progress bar should complete till 0 to 100 in two minutes. Okay, now what happens is now if we press the back button, the pro since our fragment will go to the on stop state, since the fragment is not visible to the user. So what will happen is the progress bar will stop at that point, okay. So we are so to progress bar will stop and when we resume again, it would have stopped and it will start from the starting point based since we have started the progress bar for the time two minutes, okay, so if so to handle this challenge, what I have done was I had used the countdown timer provided by the Android Android development itself. So using countdown timer, I had to calculate basically, that now the progress bar has run for out of two minutes, if it has run for one minute, I will need to calculate one minute and when I press the back button, so how long based on the system time, so I have to write the logic for how long the user was not present at that screen after pressing the back button. So I need to add that one minute plus the time the user was not present on that particular fragment, okay, fragments, so in that case, particular fragments, so when the user resumes the fragment again, and basically in the on resume state of that fragment, I had to start my countdown timer from the point after calculating such values, like the user had already run the progress bar for one minute. And then he had gone out of that screen for 20 seconds, suppose so I had to write the logic to add that 20 seconds to that one minute and then resume the progress bar from that particular state like one minute 20 seconds. So the next time the user visits that particular fragment, I will be starting that my progress bar from one minute 20 seconds so that it would give the effect that the progress bar was running in the background. So that is the challenge I had faced and this is how I tackled it.
