Skip to content

Commit e2c0b2d

Browse files
committed
Improve AutoSize#autoConvertDensity
1 parent 659ccf9 commit e2c0b2d

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

autosize/src/main/java/me/jessyan/autosize/AutoSize.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import android.app.Dialog;
2121
import android.app.Fragment;
2222
import android.content.Context;
23+
import android.content.res.Configuration;
2324
import android.content.res.Resources;
2425
import android.net.Uri;
2526
import android.util.DisplayMetrics;
@@ -36,6 +37,7 @@
3637
import me.jessyan.autosize.internal.CustomAdapt;
3738
import me.jessyan.autosize.utils.LogUtils;
3839
import me.jessyan.autosize.utils.Preconditions;
40+
import me.jessyan.autosize.utils.ScreenUtils;
3941

4042
/**
4143
* ================================================
@@ -148,6 +150,15 @@ public static void autoConvertDensityBaseOnHeight(Activity activity, float desig
148150
public static void autoConvertDensity(Activity activity, float sizeInDp, boolean isBaseOnWidth) {
149151
Preconditions.checkNotNull(activity, "activity == null");
150152

153+
boolean isVertical = activity.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT;
154+
155+
if (isVertical != AutoSizeConfig.getInstance().isVertical()) {
156+
AutoSizeConfig.getInstance().setVertical(isVertical);
157+
int[] screenSize = ScreenUtils.getScreenSize(activity.getApplicationContext());
158+
AutoSizeConfig.getInstance().setScreenWidth(screenSize[0]);
159+
AutoSizeConfig.getInstance().setScreenHeight(screenSize[1]);
160+
}
161+
151162
int screenSize = isBaseOnWidth ? AutoSizeConfig.getInstance().getScreenWidth()
152163
: AutoSizeConfig.getInstance().getScreenHeight();
153164
String key = sizeInDp + "|" + isBaseOnWidth + "|"

0 commit comments

Comments
 (0)