From 0675c638491065d1bfcfe68d1c842d83126c278a Mon Sep 17 00:00:00 2001 From: Parth Patel Date: Tue, 25 Oct 2022 16:19:55 +0530 Subject: [PATCH] Update Source code --- app/build.gradle | 43 +++++++------------ app/src/main/AndroidManifest.xml | 7 +-- .../sample/views/activities/MainActivity.java | 12 +++--- .../adapters/TabFragmentPagerAdapter.java | 9 ++-- .../sample/views/fragments/BaseFragment.java | 3 +- .../views/fragments/Default00Fragment.java | 16 ++++--- .../views/fragments/Default10Fragment.java | 16 ++++--- .../views/fragments/Default20Fragment.java | 16 ++++--- .../sample/views/fragments/Sub0xFragment.java | 15 ++++--- .../sample/views/fragments/Sub1xFragment.java | 15 ++++--- .../sample/views/fragments/Sub2xFragment.java | 15 ++++--- app/src/main/res/layout/component_page.xml | 28 +++++++----- .../main/res/layout/default00_fragment.xml | 20 +++++---- .../main/res/layout/default10_fragment.xml | 20 +++++---- .../main/res/layout/default20_fragment.xml | 20 +++++---- app/src/main/res/layout/main_activity.xml | 27 ++++++------ app/src/main/res/layout/sub_fragment.xml | 20 +++++---- app/src/main/res/values/dimens.xml | 4 +- build.gradle | 8 ++-- fragmentstack/build.gradle | 42 ++++++++++-------- fragmentstack/src/main/AndroidManifest.xml | 8 ++-- .../github/fragmentstack/FragmentStack.java | 11 ++--- .../io/github/fragmentstack/PageManager.java | 10 ++--- .../fragmentstack/PageManagerBuilder.java | 2 +- .../FragmentPagerTransitionInterceptor.java | 5 ++- .../views/FragmentPagerLifeCycleFragment.java | 2 +- gradle.properties | 2 + gradle/wrapper/gradle-wrapper.properties | 6 +-- settings.gradle | 16 ++++++- 29 files changed, 237 insertions(+), 181 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 38f85d9..c4e7bf1 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,13 +1,13 @@ apply plugin: 'com.android.application' -apply plugin: 'me.tatarka.retrolambda' +//apply plugin: 'me.tatarka.retrolambda' android { - compileSdkVersion 25 - buildToolsVersion "25.0.2" + compileSdk 32 + defaultConfig { applicationId "io.github.oniatsu.fragmentstack.sample" - minSdkVersion 23 - targetSdkVersion 25 + minSdk 21 + targetSdk 32 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" @@ -27,16 +27,14 @@ android { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } - dataBinding { - enabled = true + buildFeatures{ + viewBinding true + dataBinding true } lintOptions { abortOnError false checkReleaseBuilds false } - dexOptions { - maxProcessCount 1 - } } // apt { // arguments { @@ -45,24 +43,13 @@ android { // } dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) - androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { - exclude group: 'com.android.support', module: 'support-annotations' - }) - compile 'com.android.support:appcompat-v7:25.1.1' - testCompile 'junit:junit:4.12' - compile 'com.android.support:design:25.1.1' - - compile 'io.reactivex.rxjava2:rxjava:2.0.5' - compile 'io.reactivex.rxjava2:rxandroid:2.0.1' - compile 'com.squareup.retrofit2:retrofit:2.1.0' - compile 'com.annimon:stream:1.1.5' + implementation 'androidx.appcompat:appcompat:1.5.0' + implementation 'com.google.android.material:material:1.6.1' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' - compile 'com.f2prateek.dart:dart:2.0.1' - provided 'com.f2prateek.dart:dart-processor:2.0.1' - compile 'com.f2prateek.dart:henson:2.0.1' - provided 'com.f2prateek.dart:henson-processor:2.0.1' + testImplementation 'junit:junit:4.13.2' + androidTestImplementation 'androidx.test.ext:junit:1.1.3' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' - compile project(path: ':fragmentstack') -// compile 'io.github.oniatsu:fragment-pager:0.1.0' + implementation project(path: ':fragmentstack') } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 2d05868..84bf3a1 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -7,9 +7,10 @@ android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" - android:theme="@style/AppTheme" - > - + android:theme="@style/AppTheme"> + diff --git a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/activities/MainActivity.java b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/activities/MainActivity.java index 5299316..ddfbdf1 100644 --- a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/activities/MainActivity.java +++ b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/activities/MainActivity.java @@ -1,10 +1,10 @@ package io.github.oniatsu.fragmentstack.sample.views.activities; -import android.databinding.DataBindingUtil; import android.os.Bundle; -import android.support.v4.app.Fragment; -import android.support.v4.app.FragmentTransaction; -import android.support.v7.app.AppCompatActivity; + +import androidx.appcompat.app.AppCompatActivity; +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentTransaction; import io.github.fragmentstack.FragmentStack; import io.github.fragmentstack.PageManager; @@ -20,7 +20,8 @@ public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.main_activity); + binding = MainActivityBinding.inflate(getLayoutInflater()); + setContentView(binding.getRoot()); // Set global config (Option) FragmentStack.globalConfig() @@ -42,7 +43,6 @@ protected void onCreate(Bundle savedInstanceState) { }) .setup(); - binding = DataBindingUtil.setContentView(this, R.layout.main_activity); binding.tabViewPager.setAdapter(new TabFragmentPagerAdapter(this, getSupportFragmentManager())); binding.tabViewPager.setOffscreenPageLimit(3); binding.tabLayout.setupWithViewPager(binding.tabViewPager); diff --git a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/adapters/TabFragmentPagerAdapter.java b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/adapters/TabFragmentPagerAdapter.java index 0eb02c9..c86b085 100644 --- a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/adapters/TabFragmentPagerAdapter.java +++ b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/adapters/TabFragmentPagerAdapter.java @@ -2,9 +2,10 @@ import android.content.Context; import android.os.Bundle; -import android.support.v4.app.Fragment; -import android.support.v4.app.FragmentManager; -import android.support.v4.app.FragmentPagerAdapter; + +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentManager; +import androidx.fragment.app.FragmentPagerAdapter; import io.github.oniatsu.fragmentstack.sample.beans.PageBean; import io.github.oniatsu.fragmentstack.sample.views.fragments.BaseDefaultFragment; @@ -25,7 +26,7 @@ public TabFragmentPagerAdapter(Context context, FragmentManager fragmentManager) public Fragment getItem(int position) { Bundle bundle = new Bundle(); PageBean pageBean = new PageBean("Tab " + position, 0); - switch(position){ + switch (position) { case 0: Default00Fragment default00Fragment = new Default00Fragment(); bundle.putSerializable(BaseDefaultFragment.ExtraKey.pageBean.toString(), pageBean); diff --git a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/BaseFragment.java b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/BaseFragment.java index e268e02..6c1632a 100644 --- a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/BaseFragment.java +++ b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/BaseFragment.java @@ -1,9 +1,10 @@ package io.github.oniatsu.fragmentstack.sample.views.fragments; -import android.support.v4.app.FragmentTransaction; import android.view.animation.Animation; import android.view.animation.AnimationUtils; +import androidx.fragment.app.FragmentTransaction; + import io.github.fragmentstack.views.FragmentPagerLifeCycleFragment; import io.github.oniatsu.fragmentstack.sample.R; diff --git a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Default00Fragment.java b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Default00Fragment.java index fd1be05..f9421e1 100644 --- a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Default00Fragment.java +++ b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Default00Fragment.java @@ -1,11 +1,13 @@ package io.github.oniatsu.fragmentstack.sample.views.fragments; import android.os.Bundle; -import android.support.annotation.Nullable; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + import io.github.fragmentstack.FragmentStack; import io.github.oniatsu.fragmentstack.sample.R; import io.github.oniatsu.fragmentstack.sample.beans.PageBean; @@ -23,14 +25,16 @@ public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, } @Override - public void onActivityCreated(@Nullable Bundle savedInstanceState) { - super.onActivityCreated(savedInstanceState); - + public void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); FragmentStack.register(this, R.id.default_fragment0_container, new Sub0xFragment()); - pageBean = (PageBean) getArguments().getSerializable(ExtraKey.pageBean.toString()); - binding.setPageBean(pageBean); + } + @Override + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + binding.setPageBean(pageBean); binding.componentPage.button1.setOnClickListener(v -> { Bundle bundle = new Bundle(); Sub0xFragment sub0xFragment = new Sub0xFragment(); diff --git a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Default10Fragment.java b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Default10Fragment.java index 63545ae..94a3f5b 100644 --- a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Default10Fragment.java +++ b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Default10Fragment.java @@ -1,11 +1,13 @@ package io.github.oniatsu.fragmentstack.sample.views.fragments; import android.os.Bundle; -import android.support.annotation.Nullable; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + import io.github.fragmentstack.FragmentStack; import io.github.oniatsu.fragmentstack.sample.R; import io.github.oniatsu.fragmentstack.sample.beans.PageBean; @@ -23,14 +25,16 @@ public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, } @Override - public void onActivityCreated(@Nullable Bundle savedInstanceState) { - super.onActivityCreated(savedInstanceState); - + public void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); FragmentStack.register(this, R.id.default_fragment1_container, new Sub1xFragment()); - pageBean = (PageBean) getArguments().getSerializable(ExtraKey.pageBean.toString()); - binding.setPageBean(pageBean); + } + @Override + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + binding.setPageBean(pageBean); binding.componentPage.button1.setOnClickListener(v -> { Bundle bundle = new Bundle(); Sub1xFragment sub1xFragment = new Sub1xFragment(); diff --git a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Default20Fragment.java b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Default20Fragment.java index 2012b16..120ede5 100644 --- a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Default20Fragment.java +++ b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Default20Fragment.java @@ -1,11 +1,13 @@ package io.github.oniatsu.fragmentstack.sample.views.fragments; import android.os.Bundle; -import android.support.annotation.Nullable; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + import io.github.fragmentstack.FragmentStack; import io.github.oniatsu.fragmentstack.sample.R; import io.github.oniatsu.fragmentstack.sample.beans.PageBean; @@ -23,14 +25,16 @@ public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, } @Override - public void onActivityCreated(@Nullable Bundle savedInstanceState) { - super.onActivityCreated(savedInstanceState); - + public void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); FragmentStack.register(this, R.id.default_fragment2_container, new Sub2xFragment()); - pageBean = (PageBean) getArguments().getSerializable(ExtraKey.pageBean.toString()); - binding.setPageBean(pageBean); + } + @Override + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + binding.setPageBean(pageBean); binding.componentPage.button1.setOnClickListener(v -> { Bundle bundle = new Bundle(); Sub2xFragment sub2xFragment = new Sub2xFragment(); diff --git a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Sub0xFragment.java b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Sub0xFragment.java index beffe29..4bf768f 100644 --- a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Sub0xFragment.java +++ b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Sub0xFragment.java @@ -1,11 +1,13 @@ package io.github.oniatsu.fragmentstack.sample.views.fragments; import android.os.Bundle; -import android.support.annotation.Nullable; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + import io.github.fragmentstack.FragmentStack; import io.github.oniatsu.fragmentstack.sample.beans.PageBean; import io.github.oniatsu.fragmentstack.sample.databinding.SubFragmentBinding; @@ -22,12 +24,15 @@ public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, } @Override - public void onActivityCreated(@Nullable Bundle savedInstanceState) { - super.onActivityCreated(savedInstanceState); - + public void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); pageBean = (PageBean) getArguments().getSerializable(ExtraKey.pageBean.toString()); - binding.setPageBean(pageBean); + } + @Override + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + binding.setPageBean(pageBean); binding.componentPage.button1.setOnClickListener(v -> { Bundle bundle = new Bundle(); Sub0xFragment sub0xFragment = new Sub0xFragment(); diff --git a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Sub1xFragment.java b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Sub1xFragment.java index 8fbe02d..49cee1d 100644 --- a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Sub1xFragment.java +++ b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Sub1xFragment.java @@ -1,11 +1,13 @@ package io.github.oniatsu.fragmentstack.sample.views.fragments; import android.os.Bundle; -import android.support.annotation.Nullable; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + import io.github.fragmentstack.FragmentStack; import io.github.oniatsu.fragmentstack.sample.beans.PageBean; import io.github.oniatsu.fragmentstack.sample.databinding.SubFragmentBinding; @@ -22,12 +24,15 @@ public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, } @Override - public void onActivityCreated(@Nullable Bundle savedInstanceState) { - super.onActivityCreated(savedInstanceState); - + public void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); pageBean = (PageBean) getArguments().getSerializable(ExtraKey.pageBean.toString()); - binding.setPageBean(pageBean); + } + @Override + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + binding.setPageBean(pageBean); binding.componentPage.button1.setOnClickListener(v -> { Bundle bundle = new Bundle(); Sub1xFragment sub0xFragment = new Sub1xFragment(); diff --git a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Sub2xFragment.java b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Sub2xFragment.java index 4b4c87d..9503856 100644 --- a/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Sub2xFragment.java +++ b/app/src/main/java/io/github/oniatsu/fragmentstack/sample/views/fragments/Sub2xFragment.java @@ -1,11 +1,13 @@ package io.github.oniatsu.fragmentstack.sample.views.fragments; import android.os.Bundle; -import android.support.annotation.Nullable; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + import io.github.fragmentstack.FragmentStack; import io.github.oniatsu.fragmentstack.sample.beans.PageBean; import io.github.oniatsu.fragmentstack.sample.databinding.SubFragmentBinding; @@ -22,12 +24,15 @@ public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, } @Override - public void onActivityCreated(@Nullable Bundle savedInstanceState) { - super.onActivityCreated(savedInstanceState); - + public void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); pageBean = (PageBean) getArguments().getSerializable(ExtraKey.pageBean.toString()); - binding.setPageBean(pageBean); + } + @Override + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + binding.setPageBean(pageBean); binding.componentPage.button1.setOnClickListener(v -> { Bundle bundle = new Bundle(); Sub2xFragment sub0xFragment = new Sub2xFragment(); diff --git a/app/src/main/res/layout/component_page.xml b/app/src/main/res/layout/component_page.xml index 1c8aaf8..d5915a1 100644 --- a/app/src/main/res/layout/component_page.xml +++ b/app/src/main/res/layout/component_page.xml @@ -1,24 +1,28 @@ - + + - + + + + + android:orientation="vertical"> + + +