If I want to show a View with content which takes time to fetch, I'd usually include it in a FrameLayout with a ProgressBar alongside. Show the progressBar while fetching and show the view once the content become available.
Example with a textView.
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackground"
android:clickable="true">
<TextView
android:id="@+id/addressTv"
android:layout_width="match_parent"
android:minLines="4"
android:maxLines="4"
android:layout_height="match_parent"/>
<ProgressBar
android:id="@+id/addressLoadingBar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:indeterminate="true" />
</FrameLayout>
In this example only one of 'addressTv' or 'addressLoadingBar' is showing at any given moment, the other one is 'GONE'.
But I can't figure out how to make the FrameLayout have a fixed height. In this case the max of the children's heights. With the above layout, it changes when we switch between the children.