Skip to content

Commit b014532

Browse files
committed
see 09/21 log
1 parent 70df3fb commit b014532

File tree

12 files changed

+479
-75
lines changed

12 files changed

+479
-75
lines changed

app/src/main/java/com/blankj/androidutilcode/core/activity/ActivityActivity.java

Lines changed: 51 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@
22

33
import android.content.Context;
44
import android.content.Intent;
5+
import android.os.Build;
56
import android.os.Bundle;
7+
import android.support.v4.app.ActivityOptionsCompat;
68
import android.view.View;
9+
import android.widget.ImageView;
710
import android.widget.TextView;
811

912
import com.blankj.androidutilcode.Config;
@@ -12,6 +15,8 @@
1215
import com.blankj.androidutilcode.core.image.ImageActivity;
1316
import com.blankj.utilcode.util.ActivityUtils;
1417

18+
import java.util.Random;
19+
1520
/**
1621
* <pre>
1722
* author: Blankj
@@ -22,7 +27,8 @@
2227
*/
2328
public class ActivityActivity extends BaseBackActivity {
2429

25-
View viewSharedElement;
30+
ImageView viewSharedElement;
31+
Random random = new Random();
2632

2733
public static void start(Context context) {
2834
Intent starter = new Intent(context, ActivityActivity.class);
@@ -43,9 +49,12 @@ public int bindLayout() {
4349
@Override
4450
public void initView(Bundle savedInstanceState, View view) {
4551
getToolBar().setTitle(getString(R.string.demo_activity));
46-
viewSharedElement = findViewById(R.id.view_shared_element);
47-
findViewById(R.id.btn_start_image_activity).setOnClickListener(this);
52+
viewSharedElement = (ImageView) findViewById(R.id.view_shared_element);
53+
findViewById(R.id.btn_start_activity_cls).setOnClickListener(this);
54+
findViewById(R.id.btn_start_activity_cls_opt).setOnClickListener(this);
55+
findViewById(R.id.btn_start_activity_cls_anim).setOnClickListener(this);
4856
findViewById(R.id.btn_shared_element).setOnClickListener(this);
57+
findViewById(R.id.btn_start_home_activity).setOnClickListener(this);
4958
findViewById(R.id.btn_finish_all_activity).setOnClickListener(this);
5059
TextView tvAboutActivity = (TextView) findViewById(R.id.tv_about_activity);
5160
tvAboutActivity.setText("Is ImageActivity Exists: " + ActivityUtils.isActivityExists(Config.PKG, ImageActivity.class.getName())
@@ -62,15 +71,51 @@ public void doBusiness() {
6271
@Override
6372
public void onWidgetClick(View view) {
6473
switch (view.getId()) {
65-
case R.id.btn_start_image_activity:
66-
ActivityUtils.startActivity(Config.PKG, ImageActivity.class.getName());
74+
case R.id.btn_start_activity_cls:
75+
ActivityUtils.startActivity(SharedElementActivityActivity.class);
76+
break;
77+
case R.id.btn_start_activity_cls_opt:
78+
ActivityUtils.startActivity(SharedElementActivityActivity.class,
79+
getOption(3));
80+
break;
81+
case R.id.btn_start_activity_cls_anim:
82+
ActivityUtils.startActivity(SharedElementActivityActivity.class,
83+
R.anim.fade_in_1000, R.anim.fade_out_1000);
6784
break;
6885
case R.id.btn_shared_element:
69-
ActivityUtils.startActivity(this, SharedElementActivityActivity.class, viewSharedElement);
86+
ActivityUtils.startActivity(this, SharedElementActivityActivity.class,
87+
viewSharedElement);
88+
break;
89+
case R.id.btn_start_home_activity:
90+
ActivityUtils.startHomeActivity();
7091
break;
7192
case R.id.btn_finish_all_activity:
7293
ActivityUtils.finishAllActivities();
7394
break;
7495
}
7596
}
97+
98+
private Bundle getOption(int type) {
99+
switch (type) {
100+
case 3:
101+
return ActivityOptionsCompat.makeThumbnailScaleUpAnimation(viewSharedElement,
102+
viewSharedElement.getDrawingCache(),
103+
viewSharedElement.getWidth() / 2,
104+
viewSharedElement.getHeight() / 2).toBundle();
105+
case 2:
106+
return ActivityOptionsCompat.makeScaleUpAnimation(viewSharedElement,
107+
viewSharedElement.getWidth() / 2, viewSharedElement.getHeight() / 2,
108+
0, 0).toBundle();
109+
case 1:
110+
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
111+
return ActivityOptionsCompat.makeSceneTransitionAnimation(this,
112+
viewSharedElement,
113+
viewSharedElement.getTransitionName()).toBundle();
114+
}
115+
default:
116+
return ActivityOptionsCompat.makeCustomAnimation(this,
117+
R.anim.slide_in_right_1000,
118+
R.anim.slide_out_left_1000).toBundle();
119+
}
120+
}
76121
}

app/src/main/java/com/blankj/androidutilcode/core/activity/SharedElementActivityActivity.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,11 @@
33
import android.content.Context;
44
import android.content.Intent;
55
import android.os.Bundle;
6+
import android.support.v4.app.ActivityCompat;
67
import android.view.View;
78

89
import com.blankj.androidutilcode.R;
9-
import com.blankj.androidutilcode.base.BaseBackActivity;
10+
import com.blankj.androidutilcode.base.BaseActivity;
1011

1112
/**
1213
* <pre>
@@ -16,7 +17,7 @@
1617
* desc : Activity工具类Demo
1718
* </pre>
1819
*/
19-
public class SharedElementActivityActivity extends BaseBackActivity {
20+
public class SharedElementActivityActivity extends BaseActivity {
2021

2122
public static void start(Context context) {
2223
Intent starter = new Intent(context, SharedElementActivityActivity.class);
@@ -36,7 +37,6 @@ public int bindLayout() {
3637

3738
@Override
3839
public void initView(Bundle savedInstanceState, View view) {
39-
getToolBar().setTitle(getString(R.string.demo_activity));
4040

4141
}
4242

@@ -49,4 +49,10 @@ public void doBusiness() {
4949
public void onWidgetClick(View view) {
5050

5151
}
52+
53+
@Override
54+
protected void onDestroy() {
55+
super.onDestroy();
56+
ActivityCompat.finishAfterTransition(this);
57+
}
5258
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
3+
android:duration="1000"
4+
android:fromAlpha="0.0"
5+
android:interpolator="@android:interpolator/accelerate_quad"
6+
android:toAlpha="1.0" />
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
3+
android:duration="1000"
4+
android:fromAlpha="1.0"
5+
android:interpolator="@android:interpolator/accelerate_quad"
6+
android:toAlpha="0.0" />
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<set xmlns:android="http://schemas.android.com/apk/res/android">
3+
<translate
4+
android:duration="1000"
5+
android:fromXDelta="100%"
6+
android:toXDelta="0" />
7+
<alpha
8+
android:duration="1000"
9+
android:fromAlpha="0.0"
10+
android:toAlpha="1.0" />
11+
</set>
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<set xmlns:android="http://schemas.android.com/apk/res/android">
3+
<translate
4+
android:duration="1000"
5+
android:fromXDelta="0"
6+
android:toXDelta="-100%" />
7+
<alpha
8+
android:duration="1000"
9+
android:fromAlpha="1.0"
10+
android:toAlpha="0.0" />
11+
</set>

app/src/main/res/core/layout/activity_activity.xml

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@
77
android:orientation="vertical"
88
android:padding="@dimen/spacing_16">
99

10-
<View
10+
<ImageView
1111
android:id="@+id/view_shared_element"
1212
android:layout_width="@dimen/size_40"
1313
android:layout_height="@dimen/size_40"
14-
android:background="@color/colorPrimary"
15-
android:transitionName="@string/activity_shared_element"/>
14+
android:src="@drawable/avatar_round"
15+
android:transitionName="@string/activity_shared_element" />
1616

1717
<TextView
1818
android:id="@+id/tv_about_activity"
@@ -21,11 +21,25 @@
2121
android:layout_height="wrap_content" />
2222

2323
<Button
24-
android:id="@+id/btn_start_image_activity"
24+
android:id="@+id/btn_start_activity_cls"
2525
style="@style/WideBtnStyle"
2626
android:layout_width="match_parent"
2727
android:layout_height="wrap_content"
28-
android:text="@string/activity_start_imageActivity" />
28+
android:text="@string/activity_start_activity_cls" />
29+
30+
<Button
31+
android:id="@+id/btn_start_activity_cls_opt"
32+
style="@style/WideBtnStyle"
33+
android:layout_width="match_parent"
34+
android:layout_height="wrap_content"
35+
android:text="@string/activity_start_activity_cls_opt" />
36+
37+
<Button
38+
android:id="@+id/btn_start_activity_cls_anim"
39+
style="@style/WideBtnStyle"
40+
android:layout_width="match_parent"
41+
android:layout_height="wrap_content"
42+
android:text="@string/activity_start_activity_cls_anim" />
2943

3044
<Button
3145
android:id="@+id/btn_shared_element"
@@ -34,6 +48,13 @@
3448
android:layout_height="wrap_content"
3549
android:text="@string/activity_start_shared_element_activity" />
3650

51+
<Button
52+
android:id="@+id/btn_start_home_activity"
53+
style="@style/WideBtnStyle"
54+
android:layout_width="match_parent"
55+
android:layout_height="wrap_content"
56+
android:text="@string/activity_start_home_activity" />
57+
3758
<Button
3859
android:id="@+id/btn_finish_all_activity"
3960
style="@style/WideBtnStyle"

app/src/main/res/core/layout/activity_activity_shared_element.xml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,15 @@
33
xmlns:android="http://schemas.android.com/apk/res/android"
44
android:layout_width="match_parent"
55
android:layout_height="wrap_content"
6+
android:background="@color/white"
67
android:gravity="center_horizontal"
78
android:padding="@dimen/spacing_16">
89

9-
<View
10+
<ImageView
11+
android:id="@+id/view_shared_element"
1012
android:layout_width="@dimen/size_160"
1113
android:layout_height="@dimen/size_160"
12-
android:background="@color/colorPrimary"
13-
android:transitionName="@string/activity_shared_element"/>
14+
android:src="@drawable/avatar_round"
15+
android:transitionName="@string/activity_shared_element" />
1416

1517
</LinearLayout>

app/src/main/res/core/values/strings.xml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,11 @@
2222

2323
<!--Activity相关-->
2424
<string name="activity_shared_element">Shared Element</string>
25-
<string name="activity_start_imageActivity">Start ImageActivity</string>
25+
<string name="activity_start_activity_cls">Start Activity</string>
26+
<string name="activity_start_activity_cls_opt">Start Activity Option</string>
27+
<string name="activity_start_activity_cls_anim">Start Activity Anim</string>
2628
<string name="activity_start_shared_element_activity">Start Shared Element Activity</string>
29+
<string name="activity_start_home_activity">Start Home Activity</string>
2730
<string name="activity_finish_all_activity">Finish All Activity</string>
2831

2932
<!--App相关-->

app/src/main/res/values-v21/styles.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,6 @@
1313
<item name="android:windowIsTranslucent">true</item>
1414
<item name="android:windowBackground">@android:color/transparent</item>
1515

16-
<item name="android:windowContentTransitions">true</item>
16+
<!--<item name="android:windowContentTransitions">true</item>-->
1717
</style>
1818
</resources>

0 commit comments

Comments
 (0)