AndroidAutoSize icon indicating copy to clipboard operation
AndroidAutoSize copied to clipboard

Webview在第三方的Activity里,density适配无效。

Open Ian0903 opened this issue 4 years ago • 3 comments

重写 Activity 的 onCreateView(View parent, String name, Context context, AttributeSet attrs) 方法,在调用 super 之前调用一遍 AutoSize.autoConvertDensityOfGlobal(Activity)

Originally posted by @JessYanCoding in https://github.com/JessYanCoding/AndroidAutoSize/issues/5#issuecomment-416011062

————————————————————————————————————————————

Webview在第三方的Activity里,继承的WebViewActivity设置的density失效了,重写了onCreateView方法重新设了一遍也无效。有好的办法吗?

Ian0903 avatar Oct 21 '21 07:10 Ian0903

https://github.com/JessYanCoding/AndroidAutoSize/issues/1#issuecomment-504654664

JessYanCoding avatar Oct 22 '21 07:10 JessYanCoding

#1 (comment)

在启动WebviewActivity的时候按照如下方式替换了Context,但还是无效,发现重写的getResources方法没调用。

// 启动WebviewActivity

ARouter.getInstance()
      .build(WebRoutes.WEB_WEBVIEACTIVITY)
      .withString("url", url)
      .navigation(adjustAutoSize(context));

private static Context adjustAutoSize(Context context) {
        return new ContextWrapper(context) {
            private Resources mResources;

            {
                Resources oldResources = super.getResources();
                mResources = new Resources(oldResources.getAssets(), oldResources.getDisplayMetrics(), oldResources.getConfiguration());
            }

            @Override
            public Resources getResources() {
                AutoSizeCompat.autoConvertDensityBaseOnWidth(mResources, ALERT_BASE_WIDTH);
                return mResources;
            }
        };
    }

Ian0903 avatar Oct 22 '21 08:10 Ian0903

https://github.com/JessYanCoding/AndroidAutoSize/issues/13

JessYanCoding avatar Oct 25 '21 02:10 JessYanCoding