java - Activity 内的透明圆圈

标签 java android layout

我有一个这样的 Activity

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/transparent"
    tools:context=".WaitingActivity">
</FrameLayout>

java代码是

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_waiting);
    getWindow().setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
    getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
}

此 Activity 使用对话框主题,因此整个屏幕将为 70-80% 透明灰色。我需要在中心有一个完全透明的圆圈,这样它后面的 Activity 就可以清楚地显示出来。我怎样才能实现这一目标?

最佳答案

您可能对 PortDuff.Mode 感兴趣。它可用于为重叠 View 设置不同的传输模式。 XOR 属性可用于在全屏布局中戳一个圆孔,以便下面的内容可见。

https://developer.android.com/reference/android/graphics/PorterDuff.Mode.html

关于java - Activity 内的透明圆圈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46526876/

相关文章:

java - 将 vector 缩放为零?

android - 动态获取可绘制对象的原色以设置工具栏颜色

android - 将消息从启动 Activity 的 Activity 发送到在单击通知时启动的 Activity

android - 在android中模拟低带宽

javascript - 强制布局字段集 ExtJs4?

html - 缩放错误不会出现在 Internet Explorer 中,但会出现在我测试过的所有其他浏览器中

Java 哈希表数组

java - 为什么此代码不能正确检查接口(interface)?

java - 具有混合范围的模块

android - Row 内的 SingleChildScrollView