diff --git a/app/build.gradle b/app/build.gradle index 7493e68..200db45 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,13 +1,13 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 25 - buildToolsVersion "25.0.2" + compileSdkVersion 28 + buildToolsVersion "28.0.3" defaultConfig { applicationId "com.dinuscxj.recyclerrefreshlayout" - minSdkVersion 11 - targetSdkVersion 25 + minSdkVersion 14 + targetSdkVersion 28 versionCode 1 versionName "1.0" } @@ -21,9 +21,12 @@ android { dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) - compile 'com.android.support:appcompat-v7:25.3.1' - compile 'com.android.support:design:25.3.1' - compile 'com.android.support:recyclerview-v7:25.3.1' - compile 'com.android.support:cardview-v7:25.3.1' + compile 'androidx.appcompat:appcompat:1.0.0' + compile 'androidx.cardview:cardview:1.0.0' + compile 'androidx.fragment:fragment:1.0.0' + compile 'androidx.coordinatorlayout:coordinatorlayout:1.0.0' + compile 'androidx.recyclerview:recyclerview:1.0.0' + compile 'androidx.viewpager:viewpager:1.0.0' + compile 'com.google.android.material:material:1.0.0' compile project(':recyclerrefreshlayout') } diff --git a/app/src/main/java/com/dinuscxj/example/adapter/BaseRecyclerListAdapter.java b/app/src/main/java/com/dinuscxj/example/adapter/BaseRecyclerListAdapter.java index e7dd227..2160416 100644 --- a/app/src/main/java/com/dinuscxj/example/adapter/BaseRecyclerListAdapter.java +++ b/app/src/main/java/com/dinuscxj/example/adapter/BaseRecyclerListAdapter.java @@ -1,8 +1,8 @@ package com.dinuscxj.example.adapter; -import android.support.annotation.NonNull; -import android.support.annotation.UiThread; -import android.support.v7.widget.RecyclerView; +import androidx.annotation.NonNull; +import androidx.annotation.UiThread; +import androidx.recyclerview.widget.RecyclerView; import java.util.ArrayList; import java.util.Arrays; diff --git a/app/src/main/java/com/dinuscxj/example/adapter/HeaderViewRecyclerAdapter.java b/app/src/main/java/com/dinuscxj/example/adapter/HeaderViewRecyclerAdapter.java index 3fce4f0..17fd7bd 100644 --- a/app/src/main/java/com/dinuscxj/example/adapter/HeaderViewRecyclerAdapter.java +++ b/app/src/main/java/com/dinuscxj/example/adapter/HeaderViewRecyclerAdapter.java @@ -1,8 +1,8 @@ package com.dinuscxj.example.adapter; -import android.support.v7.widget.GridLayoutManager; -import android.support.v7.widget.RecyclerView; -import android.support.v7.widget.StaggeredGridLayoutManager; +import androidx.recyclerview.widget.GridLayoutManager; +import androidx.recyclerview.widget.RecyclerView; +import androidx.recyclerview.widget.StaggeredGridLayoutManager; import android.view.View; import android.view.ViewGroup; diff --git a/app/src/main/java/com/dinuscxj/example/adapter/RecyclerListAdapter.java b/app/src/main/java/com/dinuscxj/example/adapter/RecyclerListAdapter.java index 4b6b1ad..63b63f0 100644 --- a/app/src/main/java/com/dinuscxj/example/adapter/RecyclerListAdapter.java +++ b/app/src/main/java/com/dinuscxj/example/adapter/RecyclerListAdapter.java @@ -1,7 +1,7 @@ package com.dinuscxj.example.adapter; -import android.support.annotation.NonNull; -import android.support.v7.widget.RecyclerView; +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; import android.view.View; import android.view.ViewGroup; diff --git a/app/src/main/java/com/dinuscxj/example/demo/MaterialRefreshView.java b/app/src/main/java/com/dinuscxj/example/demo/MaterialRefreshView.java index 9b4e988..264dda0 100644 --- a/app/src/main/java/com/dinuscxj/example/demo/MaterialRefreshView.java +++ b/app/src/main/java/com/dinuscxj/example/demo/MaterialRefreshView.java @@ -10,7 +10,7 @@ import android.graphics.Shader; import android.graphics.drawable.ShapeDrawable; import android.graphics.drawable.shapes.OvalShape; -import android.support.v4.view.ViewCompat; +import androidx.core.view.ViewCompat; import android.util.AttributeSet; import android.view.View; import android.view.animation.LinearInterpolator; @@ -95,7 +95,7 @@ private void initBackground(float radius) { } else { OvalShape oval = new OvalShadow(mShadowRadius, diameter); circle = new ShapeDrawable(oval); - ViewCompat.setLayerType(this, ViewCompat.LAYER_TYPE_SOFTWARE, circle.getPaint()); + ViewCompat.setLayerType(this, View.LAYER_TYPE_SOFTWARE, circle.getPaint()); circle.getPaint().setShadowLayer(mShadowRadius, shadowXOffset, shadowYOffset, KEY_SHADOW_COLOR); final int padding = mShadowRadius; diff --git a/app/src/main/java/com/dinuscxj/example/demo/OpenProjectFloatFragment.java b/app/src/main/java/com/dinuscxj/example/demo/OpenProjectFloatFragment.java index e351332..fcd6ac2 100644 --- a/app/src/main/java/com/dinuscxj/example/demo/OpenProjectFloatFragment.java +++ b/app/src/main/java/com/dinuscxj/example/demo/OpenProjectFloatFragment.java @@ -4,10 +4,11 @@ import android.os.Bundle; import android.os.Handler; import android.os.Looper; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuInflater; diff --git a/app/src/main/java/com/dinuscxj/example/demo/OpenProjectNormalFragment.java b/app/src/main/java/com/dinuscxj/example/demo/OpenProjectNormalFragment.java index 6a03568..28a79d8 100644 --- a/app/src/main/java/com/dinuscxj/example/demo/OpenProjectNormalFragment.java +++ b/app/src/main/java/com/dinuscxj/example/demo/OpenProjectNormalFragment.java @@ -5,10 +5,11 @@ import android.os.Bundle; import android.os.Handler; import android.os.Looper; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + import android.util.DisplayMetrics; import android.view.LayoutInflater; import android.view.Menu; diff --git a/app/src/main/java/com/dinuscxj/example/demo/OpenProjectPinnedFragment.java b/app/src/main/java/com/dinuscxj/example/demo/OpenProjectPinnedFragment.java index 99aba3f..d43f7d7 100644 --- a/app/src/main/java/com/dinuscxj/example/demo/OpenProjectPinnedFragment.java +++ b/app/src/main/java/com/dinuscxj/example/demo/OpenProjectPinnedFragment.java @@ -4,10 +4,11 @@ import android.os.Bundle; import android.os.Handler; import android.os.Looper; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuInflater; diff --git a/app/src/main/java/com/dinuscxj/example/demo/OpenProjectRefreshActivity.java b/app/src/main/java/com/dinuscxj/example/demo/OpenProjectRefreshActivity.java index fa185d1..a01526a 100644 --- a/app/src/main/java/com/dinuscxj/example/demo/OpenProjectRefreshActivity.java +++ b/app/src/main/java/com/dinuscxj/example/demo/OpenProjectRefreshActivity.java @@ -1,7 +1,7 @@ package com.dinuscxj.example.demo; import android.os.Bundle; -import android.support.v7.app.AppCompatActivity; +import androidx.appcompat.app.AppCompatActivity; import com.dinuscxj.example.R; diff --git a/app/src/main/java/com/dinuscxj/example/demo/OpenProjectTabPagerFragment.java b/app/src/main/java/com/dinuscxj/example/demo/OpenProjectTabPagerFragment.java index 701b5b4..e08169b 100644 --- a/app/src/main/java/com/dinuscxj/example/demo/OpenProjectTabPagerFragment.java +++ b/app/src/main/java/com/dinuscxj/example/demo/OpenProjectTabPagerFragment.java @@ -1,8 +1,8 @@ package com.dinuscxj.example.demo; import android.content.Context; -import android.support.annotation.NonNull; -import android.support.v4.app.Fragment; +import androidx.annotation.NonNull; +import androidx.fragment.app.Fragment; import com.dinuscxj.example.R; diff --git a/app/src/main/java/com/dinuscxj/example/demo/RecyclerFragment.java b/app/src/main/java/com/dinuscxj/example/demo/RecyclerFragment.java index b75efbe..01c5fa1 100644 --- a/app/src/main/java/com/dinuscxj/example/demo/RecyclerFragment.java +++ b/app/src/main/java/com/dinuscxj/example/demo/RecyclerFragment.java @@ -1,11 +1,12 @@ package com.dinuscxj.example.demo; import android.os.Bundle; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.support.v4.app.Fragment; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; diff --git a/app/src/main/java/com/dinuscxj/example/demo/RefreshViewEg.java b/app/src/main/java/com/dinuscxj/example/demo/RefreshViewEg.java index d741b38..01c5815 100644 --- a/app/src/main/java/com/dinuscxj/example/demo/RefreshViewEg.java +++ b/app/src/main/java/com/dinuscxj/example/demo/RefreshViewEg.java @@ -7,7 +7,7 @@ import android.view.animation.DecelerateInterpolator; import android.view.animation.Interpolator; import android.view.animation.RotateAnimation; -import android.widget.ImageView; +import androidx.appcompat.widget.AppCompatImageView; import com.dinuscxj.example.R; import com.dinuscxj.refresh.IRefreshStatus; @@ -15,7 +15,7 @@ /** * the default implementation class of the interface IRefreshStatus, and the class should always be rewritten */ -public class RefreshViewEg extends android.support.v7.widget.AppCompatImageView implements IRefreshStatus { +public class RefreshViewEg extends AppCompatImageView implements IRefreshStatus { private static final int ANIMATION_DURATION = 150; private static final Interpolator ANIMATION_INTERPOLATOR = new DecelerateInterpolator(); diff --git a/app/src/main/java/com/dinuscxj/example/demo/TabPagerFragment.java b/app/src/main/java/com/dinuscxj/example/demo/TabPagerFragment.java index 98c8589..582640d 100644 --- a/app/src/main/java/com/dinuscxj/example/demo/TabPagerFragment.java +++ b/app/src/main/java/com/dinuscxj/example/demo/TabPagerFragment.java @@ -4,19 +4,20 @@ import android.os.Parcel; import android.os.ParcelFormatException; import android.os.Parcelable; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.support.design.widget.TabLayout; -import android.support.v4.app.Fragment; -import android.support.v4.app.FragmentStatePagerAdapter; -import android.support.v4.view.ViewPager; -import android.support.v7.app.AppCompatActivity; -import android.support.v7.widget.Toolbar; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; +import androidx.appcompat.widget.Toolbar; +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentStatePagerAdapter; +import androidx.viewpager.widget.ViewPager; + import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import com.dinuscxj.example.R; +import com.google.android.material.tabs.TabLayout; import java.util.ArrayList; diff --git a/app/src/main/java/com/dinuscxj/example/tips/DefaultTipsHelper.java b/app/src/main/java/com/dinuscxj/example/tips/DefaultTipsHelper.java index 00a087c..34b4d07 100644 --- a/app/src/main/java/com/dinuscxj/example/tips/DefaultTipsHelper.java +++ b/app/src/main/java/com/dinuscxj/example/tips/DefaultTipsHelper.java @@ -1,7 +1,7 @@ package com.dinuscxj.example.tips; import android.graphics.drawable.AnimationDrawable; -import android.support.v7.widget.RecyclerView; +import androidx.recyclerview.widget.RecyclerView; import android.text.TextUtils; import android.view.View; import android.widget.ImageView; diff --git a/app/src/main/res/layout/base_refresh_recycler_list_layout.xml b/app/src/main/res/layout/base_refresh_recycler_list_layout.xml index 30a2d1f..9ca8664 100644 --- a/app/src/main/res/layout/base_refresh_recycler_list_layout.xml +++ b/app/src/main/res/layout/base_refresh_recycler_list_layout.xml @@ -4,7 +4,7 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - diff --git a/app/src/main/res/layout/base_tabpager_fragment.xml b/app/src/main/res/layout/base_tabpager_fragment.xml index c8b809e..0777944 100644 --- a/app/src/main/res/layout/base_tabpager_fragment.xml +++ b/app/src/main/res/layout/base_tabpager_fragment.xml @@ -1,17 +1,17 @@ - - - - - + - - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/layout/simple_list_item.xml b/app/src/main/res/layout/simple_list_item.xml index c455a8d..d720a75 100644 --- a/app/src/main/res/layout/simple_list_item.xml +++ b/app/src/main/res/layout/simple_list_item.xml @@ -1,5 +1,5 @@ - - \ No newline at end of file + \ No newline at end of file diff --git a/build.gradle b/build.gradle index deb40b1..1e95225 100644 --- a/build.gradle +++ b/build.gradle @@ -2,10 +2,13 @@ buildscript { repositories { - jcenter() + mavenCentral() + maven { + url 'https://maven.google.com/' + } } dependencies { - classpath 'com.android.tools.build:gradle:2.3.1' + classpath 'com.android.tools.build:gradle:3.0.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } @@ -13,6 +16,8 @@ buildscript { allprojects { repositories { - jcenter() + maven { + url 'https://maven.google.com/' + } } } diff --git a/gradle.properties b/gradle.properties index 1d3591c..2a8e7cc 100644 --- a/gradle.properties +++ b/gradle.properties @@ -15,4 +15,6 @@ # When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects -# org.gradle.parallel=true \ No newline at end of file +# org.gradle.parallel=true +android.enableJetifier=false +android.useAndroidX=true \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 55ba234..411b9a1 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-3.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip \ No newline at end of file diff --git a/recyclerrefreshlayout/build.gradle b/recyclerrefreshlayout/build.gradle index 2929a37..9ff2401 100644 --- a/recyclerrefreshlayout/build.gradle +++ b/recyclerrefreshlayout/build.gradle @@ -1,12 +1,12 @@ apply plugin: 'com.android.library' android { - compileSdkVersion 25 - buildToolsVersion "25.0.2" + compileSdkVersion 28 + buildToolsVersion "28.0.3" defaultConfig { - minSdkVersion 11 - targetSdkVersion 25 + minSdkVersion 14 + targetSdkVersion 28 versionCode 1 versionName "1.0" } @@ -21,7 +21,7 @@ android { dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) - compile 'com.android.support:appcompat-v7:25.3.1' + compile 'androidx.appcompat:appcompat:1.0.0' } diff --git a/recyclerrefreshlayout/src/main/java/com/dinuscxj/refresh/RecyclerRefreshLayout.java b/recyclerrefreshlayout/src/main/java/com/dinuscxj/refresh/RecyclerRefreshLayout.java index 0e17592..cffc880 100644 --- a/recyclerrefreshlayout/src/main/java/com/dinuscxj/refresh/RecyclerRefreshLayout.java +++ b/recyclerrefreshlayout/src/main/java/com/dinuscxj/refresh/RecyclerRefreshLayout.java @@ -1,16 +1,15 @@ package com.dinuscxj.refresh; import android.content.Context; -import android.support.annotation.NonNull; -import android.support.v4.view.MotionEventCompat; -import android.support.v4.view.NestedScrollingChild; -import android.support.v4.view.NestedScrollingChildHelper; -import android.support.v4.view.NestedScrollingParent; -import android.support.v4.view.NestedScrollingParentHelper; -import android.support.v4.view.ViewCompat; +import androidx.annotation.NonNull; +import androidx.core.view.MotionEventCompat; +import androidx.core.view.NestedScrollingChild; +import androidx.core.view.NestedScrollingChildHelper; +import androidx.core.view.NestedScrollingParent; +import androidx.core.view.NestedScrollingParentHelper; +import androidx.core.view.ViewCompat; import android.util.AttributeSet; import android.util.DisplayMetrics; -import android.util.Log; import android.view.MotionEvent; import android.view.View; import android.view.ViewConfiguration; @@ -22,7 +21,7 @@ import android.widget.AbsListView; /** - * NOTE: the class based on the {@link android.support.v4.widget.SwipeRefreshLayout} source code + * NOTE: the class based on the {@link androidx.core.widget.SwipeRefreshLayout} source code *

* The RecyclerRefreshLayout should be used whenever the user can refresh the * contents of a view via a vertical swipe gesture. The activity that diff --git a/recyclerrefreshlayout/src/main/java/com/dinuscxj/refresh/RefreshView.java b/recyclerrefreshlayout/src/main/java/com/dinuscxj/refresh/RefreshView.java index e1349d4..5e5f30e 100644 --- a/recyclerrefreshlayout/src/main/java/com/dinuscxj/refresh/RefreshView.java +++ b/recyclerrefreshlayout/src/main/java/com/dinuscxj/refresh/RefreshView.java @@ -6,7 +6,6 @@ import android.graphics.Color; import android.graphics.Paint; import android.graphics.RectF; -import android.support.v4.view.animation.FastOutSlowInInterpolator; import android.util.AttributeSet; import android.view.View; import android.view.animation.LinearInterpolator;