Skip to content

Commit be1de81

Browse files
committed
fixed-bug:转场动画异常
1 parent ac3e09d commit be1de81

9 files changed

Lines changed: 2 additions & 113 deletions

File tree

app/src/main/java/cn/lzh/common/base/BaseActivity.java

Lines changed: 0 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -214,8 +214,6 @@ protected void onDestroy() {
214214
WaitingDialog.dismissAndRelease(mWaitingDialog);
215215
mWaitingDialog = null;
216216
super.onDestroy();
217-
// fixHuaWeiMemoryLeak();
218-
// fixInputMethodManagerLeak(this);
219217
}
220218

221219

@@ -227,67 +225,4 @@ protected void hideSoftInput() {
227225
imm.hideSoftInputFromWindow(getWindow().getDecorView().getWindowToken(), 0);
228226
}
229227

230-
/**
231-
* 修复华为手机内存的泄露
232-
*/
233-
public void fixHuaWeiMemoryLeak(){
234-
//测试
235-
try {
236-
Class<?> GestureBoostManagerClass = Class.forName("android.gestureboost.GestureBoostManager");
237-
Field sGestureBoostManagerField = GestureBoostManagerClass.getDeclaredField("sGestureBoostManager");
238-
sGestureBoostManagerField.setAccessible(true);
239-
Object gestureBoostManager = sGestureBoostManagerField.get(GestureBoostManagerClass);
240-
Field contextField = GestureBoostManagerClass.getDeclaredField("mContext");
241-
contextField.setAccessible(true);
242-
if (contextField.get(gestureBoostManager)==this) {
243-
contextField.set(gestureBoostManager, null);
244-
}
245-
} catch (Throwable t) {
246-
// t.printStackTrace();
247-
// 忽略该异常
248-
}
249-
250-
}
251-
252-
/**
253-
* 修复InputMethodManager导致Activity的内存泄露<br/>
254-
* 问题链接:http://blog.csdn.net/sodino/article/details/32188809
255-
* @param destContext
256-
*/
257-
private void fixInputMethodManagerLeak(Context destContext) {
258-
if (destContext == null) {
259-
return;
260-
}
261-
262-
InputMethodManager imm = (InputMethodManager) destContext.getSystemService(Context.INPUT_METHOD_SERVICE);
263-
if (imm == null) {
264-
return;
265-
}
266-
267-
String[] arr = new String[]{"mLastSrvView","mCurRootView", "mServedView", "mNextServedView"};
268-
Field f = null;
269-
Object obj_get = null;
270-
for (int i = 0; i < arr.length; i++) {
271-
String param = arr[i];
272-
try {
273-
f = imm.getClass().getDeclaredField(param);
274-
if (!f.isAccessible()) {
275-
f.setAccessible(true);
276-
}
277-
obj_get = f.get(imm);
278-
if (obj_get != null && obj_get instanceof View) {
279-
View v_get = (View) obj_get;
280-
if (v_get.getContext() == destContext) { // 被InputMethodManager持有引用的context是想要目标销毁的
281-
f.set(imm, null); // 置空,破坏掉path to gc节点
282-
} else {
283-
// 不是想要目标销毁的,即为又进了另一层界面了,不要处理,避免影响原逻辑,也就不用继续for循环了
284-
break;
285-
}
286-
}
287-
} catch (Throwable t) {
288-
// t.printStackTrace();
289-
}
290-
}
291-
}
292-
293228
}

ui/src/main/res/anim/slide_bottom_in.xml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,4 @@
55
android:fromYDelta="100%"
66
android:interpolator="@android:anim/decelerate_interpolator"
77
android:toYDelta="0"/>
8-
9-
<alpha
10-
android:duration="@android:integer/config_mediumAnimTime"
11-
android:fromAlpha="0.0"
12-
android:interpolator="@android:interpolator/decelerate_quint"
13-
android:toAlpha="1.0" />
148
</set>

ui/src/main/res/anim/slide_bottom_out.xml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,4 @@
55
android:fromYDelta="0"
66
android:interpolator="@android:anim/decelerate_interpolator"
77
android:toYDelta="100%p" />
8-
9-
<alpha
10-
android:duration="@android:integer/config_mediumAnimTime"
11-
android:fromAlpha="1.0"
12-
android:interpolator="@android:interpolator/decelerate_quint"
13-
android:toAlpha="0.0" />
148
</set>

ui/src/main/res/anim/slide_left_in.xml

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,7 @@
22
<set xmlns:android="http://schemas.android.com/apk/res/android">
33
<translate
44
android:duration="@android:integer/config_mediumAnimTime"
5-
android:fromXDelta="100%p"
5+
android:fromXDelta="-100%p"
66
android:interpolator="@android:interpolator/decelerate_quint"
77
android:toXDelta="0%p" />
8-
9-
<alpha
10-
android:duration="@android:integer/config_mediumAnimTime"
11-
android:fromAlpha="0.0"
12-
android:interpolator="@android:interpolator/decelerate_quint"
13-
android:toAlpha="1.0" />
148
</set>

ui/src/main/res/anim/slide_left_out.xml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,4 @@
55
android:fromXDelta="0%p"
66
android:interpolator="@android:interpolator/decelerate_quint"
77
android:toXDelta="-100%p" />
8-
9-
<alpha
10-
android:duration="@android:integer/config_mediumAnimTime"
11-
android:fromAlpha="1.0"
12-
android:interpolator="@android:interpolator/decelerate_quint"
13-
android:toAlpha="0.0" />
148
</set>

ui/src/main/res/anim/slide_right_in.xml

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,7 @@
22
<set xmlns:android="http://schemas.android.com/apk/res/android">
33
<translate
44
android:duration="@android:integer/config_mediumAnimTime"
5-
android:fromXDelta="-100%p"
5+
android:fromXDelta="100%p"
66
android:interpolator="@android:interpolator/decelerate_quint"
77
android:toXDelta="0%p" />
8-
9-
<alpha
10-
android:duration="@android:integer/config_mediumAnimTime"
11-
android:fromAlpha="0.0"
12-
android:interpolator="@android:interpolator/decelerate_quint"
13-
android:toAlpha="1.0" />
148
</set>

ui/src/main/res/anim/slide_right_out.xml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,4 @@
77
android:interpolator="@android:interpolator/decelerate_quint"
88
android:toXDelta="100%p" />
99

10-
<alpha
11-
android:duration="@android:integer/config_mediumAnimTime"
12-
android:fromAlpha="1.0"
13-
android:interpolator="@android:interpolator/decelerate_quint"
14-
android:toAlpha="0.0" />
1510
</set>

ui/src/main/res/anim/slide_top_in.xml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,5 @@
55
android:fromYDelta="-100%p"
66
android:interpolator="@android:anim/decelerate_interpolator"
77
android:toYDelta="0" />
8-
9-
<alpha
10-
android:duration="@android:integer/config_mediumAnimTime"
11-
android:fromAlpha="0.0"
12-
android:interpolator="@android:interpolator/decelerate_quint"
13-
android:toAlpha="1.0" />
148
</set>
159

ui/src/main/res/anim/slide_top_out.xml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,4 @@
77
android:interpolator="@android:anim/decelerate_interpolator"
88
android:toYDelta="-100%p" />
99

10-
<alpha
11-
android:duration="@android:integer/config_mediumAnimTime"
12-
android:fromAlpha="1.0"
13-
android:interpolator="@android:interpolator/decelerate_quint"
14-
android:toAlpha="0.0" />
1510
</set>

0 commit comments

Comments
 (0)