Automatically scroll HotspotIntroFragment.

This commit is contained in:
akwizgran
2021-08-19 13:00:54 +01:00
parent a390bf1c4f
commit 7fb2faba45
2 changed files with 7 additions and 0 deletions

View File

@@ -9,6 +9,7 @@ import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ProgressBar;
import android.widget.ScrollView;
import android.widget.TextView;
import com.google.android.material.snackbar.Snackbar;
@@ -26,6 +27,7 @@ import androidx.lifecycle.ViewModelProvider;
import static android.content.pm.ApplicationInfo.FLAG_TEST_ONLY;
import static android.os.Build.VERSION.SDK_INT;
import static android.view.View.FOCUS_DOWN;
import static android.view.View.INVISIBLE;
import static android.view.View.VISIBLE;
import static androidx.transition.TransitionManager.beginDelayedTransition;
@@ -46,6 +48,7 @@ public class HotspotIntroFragment extends Fragment {
private Button startButton;
private ProgressBar progressBar;
private TextView progressTextView;
private ScrollView scrollView;
private final AbstractConditionManager conditionManager = SDK_INT < 29 ?
new ConditionManager(this, this::onPermissionUpdate) :
@@ -70,6 +73,7 @@ public class HotspotIntroFragment extends Fragment {
startButton = v.findViewById(R.id.startButton);
progressBar = v.findViewById(R.id.progressBar);
progressTextView = v.findViewById(R.id.progressTextView);
scrollView = v.findViewById(R.id.scrollView);
startButton.setOnClickListener(this::onButtonClick);
@@ -82,6 +86,8 @@ public class HotspotIntroFragment extends Fragment {
public void onStart() {
super.onStart();
conditionManager.onStart();
// Scroll down in case the screen is small, so the button is visible
scrollView.post(() -> scrollView.fullScroll(FOCUS_DOWN));
}
private void onButtonClick(View view) {

View File

@@ -2,6 +2,7 @@
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/scrollView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"