请帮我写出Android 以自由窗口启动activtity的示例
时间: 2024-03-20 13:39:41 浏览: 61
好的,以下是一个简单的示例代码:
```
// 创建一个Intent对象
Intent intent = new Intent(this, MyActivity.class);
// 设置标志位FLAG_ACTIVITY_NEW_TASK,让Activity在一个新的任务中启动
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// 创建一个自定义的窗口
WindowManager.LayoutParams params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY,
WindowManager.LayoutParams.FLAG_FULLSCREEN,
PixelFormat.TRANSLUCENT);
// 启动Activity
startActivity(intent);
// 将Activity的窗口设置为自定义窗口
getWindow().setAttributes(params);
```
在上面的代码中,我们首先创建了一个Intent对象,指定要启动的Activity为MyActivity。然后设置了标志位FLAG_ACTIVITY_NEW_TASK,让Activity在一个新的任务中启动。
接着,我们创建了一个自定义的窗口,使用了WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY参数,表示这是一个覆盖在其他窗口上的窗口,并且设置了一些其他属性。
最后,我们启动了Activity,并将其窗口设置为自定义窗口。这样,Activity就可以在一个自由窗口中启动了。
阅读全文