diff --git a/app/build.gradle b/app/build.gradle
index 1f52eef..45a5211 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -7,22 +7,15 @@ buildscript {
}
android {
- compileSdkVersion 25
- buildToolsVersion '26.0.2'
+ compileSdkVersion 28
+ buildToolsVersion '28.0.3'
defaultConfig {
applicationId "com.sackcentury.shinebutton"
minSdkVersion 14
- targetSdkVersion 25
+ targetSdkVersion 28
versionCode 1
versionName "1.0"
- jackOptions {
- enabled true
- }
- }
- compileOptions {
-// sourceCompatibility JavaVersion.VERSION_1_8
-// targetCompatibility JavaVersion.VERSION_1_8
}
buildTypes {
release {
@@ -30,15 +23,17 @@ android {
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
+ compileOptions {
+ sourceCompatibility JavaVersion.VERSION_1_8
+ targetCompatibility JavaVersion.VERSION_1_8
+ }
}
dependencies {
- compile fileTree(dir: 'libs', include: ['*.jar'])
- compile 'com.sackcentury:shinebutton:0.2.0'
- compile project(path: ':shinebuttonlib')
- //noinspection GradleCompatible
- compile 'com.android.support:appcompat-v7:25.4.0'
- compile 'com.android.support:cardview-v7:25.4.0'
- compile 'com.android.support.constraint:constraint-layout:1.0.2'
- testCompile 'junit:junit:4.12'
+ implementation "androidx.appcompat:appcompat:$androidx_version"
+ implementation "androidx.cardview:cardview:$cardView_version"
+ implementation "androidx.constraintlayout:constraintlayout:$constraintlayout_version"
+
+ implementation "com.sackcentury:shinebutton:$shinebutton_version"
+ implementation project(":shinebuttonlib")
}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 8e920b7..2a16f4a 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -14,7 +14,7 @@
-
+
\ No newline at end of file
diff --git a/app/src/main/java/com/sackcentury/shinebutton/FragmentDemo.java b/app/src/main/java/com/sackcentury/shinebutton/FragmentDemo.java
index 752e99c..a2c2341 100644
--- a/app/src/main/java/com/sackcentury/shinebutton/FragmentDemo.java
+++ b/app/src/main/java/com/sackcentury/shinebutton/FragmentDemo.java
@@ -1,10 +1,6 @@
package com.sackcentury.shinebutton;
import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentManager;
-import android.support.v4.app.FragmentTransaction;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -13,6 +9,11 @@
import com.sackcentury.shinebuttonlib.ShineButton;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentManager;
+import androidx.fragment.app.FragmentTransaction;
+
/**
* @author Chad
* @title com.sackcentury.shinebutton
@@ -22,8 +23,9 @@
* @since 17/3/17 上午11:23
**/
public class FragmentDemo extends Fragment {
- View rootView;
- FragmentManager fragmentManager;
+
+ private View rootView;
+ private FragmentManager fragmentManager;
@Nullable
@Override
@@ -39,24 +41,14 @@ public void onResume() {
}
private void initData() {
- ShineButton shineButton1 = (ShineButton) rootView.findViewById(R.id.po_image1);
- shineButton1.init((MainActivity) getActivity());
+ ShineButton shineButton1 = rootView.findViewById(R.id.po_image1);
+ shineButton1.init(getActivity());
- ShineButton shineButton2 = (ShineButton) rootView.findViewById(R.id.po_image2);
- ShineButton shineButton3 = (ShineButton) rootView.findViewById(R.id.po_image3);
- final Button hideBtn = (Button) rootView.findViewById(R.id.hide_button);
- hideBtn.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- hideFragment();
- }
- });
- rootView.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- hideFragment();
- }
- });
+ ShineButton shineButton2 = rootView.findViewById(R.id.po_image2);
+ ShineButton shineButton3 = rootView.findViewById(R.id.po_image3);
+ final Button hideBtn = rootView.findViewById(R.id.hide_button);
+ hideBtn.setOnClickListener(view -> hideFragment());
+ rootView.setOnClickListener(view -> hideFragment());
}
public void showFragment(final FragmentManager fragmentManager) {
diff --git a/app/src/main/java/com/sackcentury/shinebutton/ListDemoActivity.java b/app/src/main/java/com/sackcentury/shinebutton/ListDemoActivity.java
index d5e2682..eacdd87 100644
--- a/app/src/main/java/com/sackcentury/shinebutton/ListDemoActivity.java
+++ b/app/src/main/java/com/sackcentury/shinebutton/ListDemoActivity.java
@@ -17,22 +17,20 @@
public class ListDemoActivity extends Activity {
- ListView listView;
+ private ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list_demo);
- listView = (ListView) findViewById(R.id.list);
+ listView = findViewById(R.id.list);
listView.setAdapter(new ListAdapter());
getWindow().setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
-
}
List dataList = new ArrayList<>();
-
class ListAdapter extends BaseAdapter {
public ListAdapter() {
for (int i = 0; i < 20; i++) {
@@ -60,16 +58,11 @@ public View getView(final int i, View view, ViewGroup viewGroup) {
if (view == null) {
view = LayoutInflater.from(ListDemoActivity.this).inflate(R.layout.list_item, null);
}
- ShineButton button = (ShineButton) view.findViewById(R.id.po_image);
- TextView textView = (TextView) view.findViewById(R.id.text_item_id);
+ ShineButton button = view.findViewById(R.id.po_image);
+ TextView textView = view.findViewById(R.id.text_item_id);
textView.setText("ShineButton Position " + i);
button.setChecked(dataList.get(i).checked);
- button.setOnCheckStateChangeListener(new ShineButton.OnCheckedChangeListener() {
- @Override
- public void onCheckedChanged(View view, boolean checked) {
- dataList.get(i).checked = checked;
- }
- });
+ button.setOnCheckStateChangeListener((v, checked) -> dataList.get(i).checked = checked);
return view;
}
}
diff --git a/app/src/main/java/com/sackcentury/shinebutton/MainActivity.java b/app/src/main/java/com/sackcentury/shinebutton/MainActivity.java
index 5eb414b..28cdebd 100644
--- a/app/src/main/java/com/sackcentury/shinebutton/MainActivity.java
+++ b/app/src/main/java/com/sackcentury/shinebutton/MainActivity.java
@@ -5,7 +5,6 @@
import android.graphics.Color;
import android.os.Build;
import android.os.Bundle;
-import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
@@ -17,16 +16,18 @@
import com.sackcentury.shinebuttonlib.ShineButton;
+import androidx.appcompat.app.AppCompatActivity;
+
public class MainActivity extends AppCompatActivity {
- String TAG = "MainActivity";
- ShineButton shineButton;
- ShineButton porterShapeImageView1;
- ShineButton porterShapeImageView2;
- ShineButton porterShapeImageView3;
+ private static String TAG = "MainActivity";
+ private ShineButton shineButton;
+ private ShineButton porterShapeImageView1;
+ private ShineButton porterShapeImageView2;
+ private ShineButton porterShapeImageView3;
- Button listDemo;
- Button fragmentDemo;
- Button dialogDemo;
+ private Button listDemo;
+ private Button fragmentDemo;
+ private Button dialogDemo;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -36,27 +37,25 @@ protected void onCreate(Bundle savedInstanceState) {
// getSupportActionBar().hide();
}
setFullScreen(this);
- shineButton = (ShineButton) findViewById(R.id.po_image0);
- listDemo = (Button) findViewById(R.id.btn_list_demo);
- fragmentDemo = (Button) findViewById(R.id.btn_fragment_demo);
- dialogDemo = (Button) findViewById(R.id.btn_dialog_demo);
-
+ shineButton = findViewById(R.id.po_image0);
+ listDemo = findViewById(R.id.btn_list_demo);
+ fragmentDemo = findViewById(R.id.btn_fragment_demo);
+ dialogDemo = findViewById(R.id.btn_dialog_demo);
- LinearLayout linearLayout = (LinearLayout) findViewById(R.id.wrapper);
+ LinearLayout linearLayout = findViewById(R.id.wrapper);
if (shineButton != null)
shineButton.init(this);
- porterShapeImageView1 = (ShineButton) findViewById(R.id.po_image1);
+ porterShapeImageView1 = findViewById(R.id.po_image1);
if (porterShapeImageView1 != null)
porterShapeImageView1.init(this);
- porterShapeImageView2 = (ShineButton) findViewById(R.id.po_image2);
+ porterShapeImageView2 = findViewById(R.id.po_image2);
if (porterShapeImageView2 != null)
porterShapeImageView2.init(this);
- porterShapeImageView3 = (ShineButton) findViewById(R.id.po_image3);
+ porterShapeImageView3 = findViewById(R.id.po_image3);
if (porterShapeImageView3 != null)
porterShapeImageView3.init(this);
-
ShineButton shineButtonJava = new ShineButton(this);
shineButtonJava.setBtnColor(Color.GRAY);
@@ -71,64 +70,24 @@ protected void onCreate(Bundle savedInstanceState) {
}
- shineButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- Log.e(TAG, "click");
- }
- });
- shineButton.setOnCheckStateChangeListener(new ShineButton.OnCheckedChangeListener() {
- @Override
- public void onCheckedChanged(View view, boolean checked) {
- Log.e(TAG, "click " + checked);
- }
- });
-
- porterShapeImageView2.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- Log.e(TAG, "click");
- }
- });
- porterShapeImageView3.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- Log.e(TAG, "click");
- }
- });
+ shineButton.setOnClickListener(view -> Log.e(TAG, "click"));
+ shineButton.setOnCheckStateChangeListener((v, checked) -> Log.e(TAG, "click " + checked));
+ porterShapeImageView2.setOnClickListener(view -> Log.e(TAG, "click"));
+ porterShapeImageView3.setOnClickListener(view -> Log.e(TAG, "click"));
- listDemo.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- startActivity(new Intent(v.getContext(), ListDemoActivity.class));
- }
- });
- fragmentDemo.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- showFragmentPage();
- }
- });
- dialogDemo.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Dialog dialog = new Dialog(MainActivity.this);
- View view = LayoutInflater.from(MainActivity.this).inflate(R.layout.dialog, null);
- ShineButton shineButton = (ShineButton) view.findViewById(R.id.po_image);
- shineButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Log.e(TAG, "click");
- }
- });
- dialog.setContentView(view);
- dialog.show();
- }
+ listDemo.setOnClickListener(v -> startActivity(new Intent(v.getContext(), ListDemoActivity.class)));
+ fragmentDemo.setOnClickListener(view -> showFragmentPage());
+ dialogDemo.setOnClickListener(v -> {
+ Dialog dialog = new Dialog(MainActivity.this);
+ View view = LayoutInflater.from(MainActivity.this).inflate(R.layout.dialog, null);
+ ShineButton shineButton = view.findViewById(R.id.po_image);
+ shineButton.setOnClickListener(vv -> Log.e(TAG, "click"));
+ dialog.setContentView(view);
+ dialog.show();
});
}
-
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main_menu, menu);
@@ -169,7 +128,5 @@ public static void setFullScreen(AppCompatActivity activity) {
// in Activity's onCreate() for instance
activity.getWindow().setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
}
-
}
-
}
diff --git a/app/src/main/res/layout/activity_list_demo.xml b/app/src/main/res/layout/activity_list_demo.xml
index d9f5620..a3e24e9 100644
--- a/app/src/main/res/layout/activity_list_demo.xml
+++ b/app/src/main/res/layout/activity_list_demo.xml
@@ -1,5 +1,5 @@
-
-
+
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 12ff881..a890c23 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -122,7 +122,7 @@
android:visibility="gone" />
-
-
+
diff --git a/build.gradle b/build.gradle
index f5ee59d..e4c08f8 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,28 +1,29 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
+
+ ext {
+ androidx_version = '1.0.2'
+ ei_version = '1.0.0'
+ shinebutton_version = '0.2.0'
+ cardView_version = '1.0.0'
+ constraintlayout_version = '2.0.0-alpha2'
+ }
+
repositories {
jcenter()
- maven {
- url 'https://maven.google.com/'
- name 'Google'
- }
+ google()
}
- dependencies {
- classpath 'com.android.tools.build:gradle:3.0.0-rc2'
- // NOTE: Do not place your application dependencies here; they belong
- // in the individual module build.gradle files
+ dependencies {
+ classpath "com.android.tools.build:gradle:3.2.1"
}
}
allprojects {
repositories {
jcenter()
- maven {
- url 'https://maven.google.com/'
- name 'Google'
- }
+ google()
}
}
diff --git a/gradle.properties b/gradle.properties
index 518b53b..9d886dc 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -31,4 +31,6 @@ POM_LICENCE_DIST=repo
POM_DEVELOPER_ID=ChadCSong
POM_DEVELOPER_NAME=Song Chao
POM_INCEPTION_YEAR=2016
+android.useAndroidX=true
+android.enableJetifier=true
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 44b1c0a..1ce1e47 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Mon Oct 23 17:06:41 CST 2017
+#Tue Nov 27 17:56:51 KST 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip
diff --git a/shinebuttonlib/build.gradle b/shinebuttonlib/build.gradle
index 58fb489..20bd94a 100644
--- a/shinebuttonlib/build.gradle
+++ b/shinebuttonlib/build.gradle
@@ -1,12 +1,12 @@
apply plugin: 'com.android.library'
android {
- compileSdkVersion 23
- buildToolsVersion '26.0.2'
+ compileSdkVersion 28
+ buildToolsVersion '28.0.3'
defaultConfig {
minSdkVersion 14
- targetSdkVersion 23
+ targetSdkVersion 28
versionCode 9
versionName "0.1.9"
@@ -24,10 +24,8 @@ android {
}
dependencies {
- compile fileTree(dir: 'libs', include: ['*.jar'])
- testCompile 'junit:junit:4.12'
- compile 'com.android.support:appcompat-v7:23.2.1'
- compile 'com.daasuu:EasingInterpolator:1.0.0'
+ implementation "androidx.appcompat:appcompat:$androidx_version"
+ implementation "com.daasuu:EasingInterpolator:$ei_version"
}
//apply from: '../maven_push.gradle'
diff --git a/shinebuttonlib/src/main/java/com/sackcentury/shinebuttonlib/PorterImageView.java b/shinebuttonlib/src/main/java/com/sackcentury/shinebuttonlib/PorterImageView.java
index b96b491..bd27dae 100644
--- a/shinebuttonlib/src/main/java/com/sackcentury/shinebuttonlib/PorterImageView.java
+++ b/shinebuttonlib/src/main/java/com/sackcentury/shinebuttonlib/PorterImageView.java
@@ -13,7 +13,7 @@
import android.util.AttributeSet;
import android.util.Log;
-public abstract class PorterImageView extends android.support.v7.widget.AppCompatImageView {
+public abstract class PorterImageView extends androidx.appcompat.widget.AppCompatImageView {
private static final String TAG = PorterImageView.class.getSimpleName();
private static final PorterDuffXfermode PORTER_DUFF_XFERMODE = new PorterDuffXfermode(PorterDuff.Mode.DST_IN);