豹小秘DP开发
简介
豹小秘DP是豹小秘大屏版,支持大屏显示内容。
1.权限问题
豹小秘DP显示内容必须申请全局弹出对话框SYSTEM_ALERT_WINDOW权限。
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

2.大屏存在的问题
因为屏幕适配是从横屏旋转成了竖屏,但系统读取时又无法正确读取到旋转后的屏幕信息,所以这里有一个坐标转换来保证屏幕的长宽比正常,具体参考demo代码中的
private int screenWidth = 0;
private float scaleX = 0;
public BSImageDisplay(Context outerContext, Display display) {
super(outerContext, display);
Point pt = new Point();
display.getSize(pt);
screenWidth = pt.y * pt.y / pt.x;
scaleX = pt.x * 1.0f * pt.x / pt.y / pt.y;
}
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.bs_image_layout);
//大屏分辨率因为横竖屏的问题,需要一次转换,所以有了如下的转换代码。没有这一次转换会出现长宽比例不对的问题。
//Because there is a problem, we have to rotate the screen, so we have the code below
findViewById(R.id.bg_image_main).getLayoutParams().width = screenWidth;
findViewById(R.id.bg_image_main).setScaleX(scaleX);
........
}