diff options
Diffstat (limited to 'app/src/main/java/moe/yuuta/flow/MainActivity.java')
-rw-r--r-- | app/src/main/java/moe/yuuta/flow/MainActivity.java | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/app/src/main/java/moe/yuuta/flow/MainActivity.java b/app/src/main/java/moe/yuuta/flow/MainActivity.java index cba4bbd..d827aa6 100644 --- a/app/src/main/java/moe/yuuta/flow/MainActivity.java +++ b/app/src/main/java/moe/yuuta/flow/MainActivity.java @@ -6,6 +6,7 @@ import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.Button; import android.widget.TextView; import androidx.annotation.NonNull; @@ -26,9 +27,9 @@ public class MainActivity extends AppCompatActivity { super.onCreate(savedInstanceState); AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES); Log.i(TAG, "onCreate()"); - if (mFragment == null) { + if (mFragment == null && savedInstanceState == null) { mFragment = new FlowFragment(); - mFragment.setPages(Arrays.asList(new Page1(), new Page2(), new Page3())); + mFragment.setPages(Arrays.asList(new Page1(), new Page2(), new Page3(), new Page4())); getSupportFragmentManager() .beginTransaction() .replace(android.R.id.content, mFragment) @@ -95,6 +96,34 @@ public class MainActivity extends AppCompatActivity { } } + public static class Page4 extends PageFragment { + public Page4() { + mInfo = new FlowInfo(new HeaderConfig("Page 4", "just a counter", false), null); + } + + // TODO: The FlowFragment keeps the instance, maybe we don't want that happened to child fragments. + private int mCount; + + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + Button button = new Button(requireContext()); + button.setMinHeight(20); + button.setText("+1s"); + button.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + mCount++; + HeaderConfig config = mInfo.getHeaderConfig(); + config.setSubtitleText(Integer.toString(mCount)); + mInfo.setHeaderConfig(config); + getHostFragment().notifyCurrentFlowInfoUpdated(); + } + }); + return button; + } + } + @Override public void onBackPressed() { if (mFragment != null && mFragment.onBackPressed()) return; |