我想从屏幕顶部以编程方式在全屏上绘制某些内容。但是,总是有一个y轴偏移量。它似乎是身份(标题)栏的高度。Android WindowManager.LayoutParams y偏移量
这里是我的代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WindowManager.LayoutParams params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.TYPE_SYSTEM_ALERT,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE
| WindowManager.LayoutParams.FLAG_FULLSCREEN,
PixelFormat.TRANSLUCENT);
params.gravity = Gravity.LEFT | Gravity.TOP;
params.x = 0;
params.y = 0;
params.width = 200;
params.height = 300;
GradientDrawable gd = new GradientDrawable();
gd.setShape(GradientDrawable.RECTANGLE);
gd.setColor(Settings.highlightColor);
ImageView iv = new ImageView(this);
iv.setImageDrawable(gd);
WindowManager windowManager = (WindowManager) this.getSystemService(Context.WINDOW_SERVICE);
windowManager.addView(iv, params);
我已经设置全屏在AndroidManifest.xml:
android:theme="@android:style/Theme.Light.NoTitleBar.Fullscreen"
这里是我的了:
它的工作原理。谢谢。 – WeiHung
您现在应该将答案标记为正确。 –