JessYanCoding / JessYanCoding/AndroidAutoSize
引入饺子播放器后,横屏切换竖屏后,播放按钮变大,其他控件正常
- 主要語言
- Java
- 星號
- 13.7k
- 分支
- 2k
- PR 合併指標
- 30 天內沒有已合併 PR
描述
1.播放界面的Activity也实现CancelAdapt接口了,无效。
2.重写CustomAdapt 接口方法也试了,无效
Application里进行了如下配置,
AutoSizeConfig.getInstance() //屏幕适配监听器
.setBaseOnWidth(true)
.setDesignWidthInDp(375)
.setDesignHeightInDp(667)
.setOnAdaptListener(new onAdaptListener() {
@Override
public void onAdaptBefore(Object target, Activity activity) {
//使用以下代码, 可以解决横竖屏切换时的屏幕适配问题
//使用以下代码, 可支持 Android 的分屏或缩放模式, 但前提是在分屏或缩放模式下当用户改变您 App 的窗口大小时系统会重绘当前的页面, 经测试在某些机型, 某些情况下系统不会重绘当前页面, ScreenUtils.getScreenSize(activity) 的参数一定要不要传 Application!!!
AutoSizeConfig.getInstance().setScreenWidth(ScreenUtils.getScreenSize(activity)[0]);
AutoSizeConfig.getInstance().setScreenHeight(ScreenUtils.getScreenSize(activity)[1]);
//根据屏幕方向,设置设计尺寸
if (activity.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
//设置横屏设计尺寸
AutoSizeConfig.getInstance()
.setDesignWidthInDp(667)
.setDesignHeightInDp(375);
} else {
//设置竖屏设计尺寸
AutoSizeConfig.getInstance()
.setDesignWidthInDp(375)
.setDesignHeightInDp(667);
}
}
@Override
public void onAdaptAfter(Object target, Activity activity) {
AutoSizeLog.d(String.format(Locale.ENGLISH, "%s onAdaptAfter!", target.getClass().getName()));
}
});
貢獻指南
這個儲存庫沒有索引到貢獻指南
研究方向
Start by reproducing the landscape-to-portrait transition in the Activity using the 饺子播放器, then review its CancelAdapt and CustomAdapt handling. Trace the Application configuration through onAdaptBefore, ScreenUtils.getScreenSize, and the orientation-specific design dimensions; done means the playback button keeps the expected size after rotation while the other controls remain unchanged.
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- android, java
- 領域
- mobile
- Issue 類型
- 缺陷
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 活躍度
- 冷清
- 描述清晰度
- 需要釐清
- 新手友好度
- 42/100