
特性
- 真实的的
液体玻璃效果 - 基于物理的折射和色散效果 - 高度可定制 - 支持调整圆角、折射参数、色散、色调等
要求
- Android API 33 及以上(Android 13),以获得完整的玻璃效果
Demo 示例
GitHub
快速集成
添加仓库
在项目根目录的settings.gradle添加仓库:
gradle
1dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
添加依赖
在模块的build.gradle添加依赖项:
gradle
dependencies {
implementation 'com.github.QmDeve:AndroidLiquidGlassView:v0.0.1-alpha02'
}
如何使用
XML布局
xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/root"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- 内容容器 -->
<FrameLayout
android:id="@+id/content_container"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/images"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:src="@drawable/image" />
</RelativeLayout>
</FrameLayout>
<!-- 液态玻璃视图 -->
<com.qmdeve.liquidglass.widget.LiquidGlassView
android:id="@+id/liquidGlassView"
android:layout_width="200dp"
android:layout_height="200dp"
android:layout_centerInParent="true" />
</RelativeLayout>
绑定采样源
java
ViewGroup content = findViewById(R.id.content_container);
LiquidGlassView liquidGlassView = findViewById(R.id.liquidGlassView);
// 绑定采样源
liquidGlassView.bind(content);
API Reference
| 方法 | 描述 | 默认值 |
|---|---|---|
bind(ViewGroup source) |
绑定采样源 | - |
setCornerRadius(float px) |
设置圆角半径 (px) (0dp-99dp) | 40dp |
setRefractionHeight(float px) |
设置折射高度 (px) (12dp-50dp) | 20dp |
setRefractionOffset(float px) |
设置折射偏移 (px) (20dp-120dp) | 70dp |
setTintColorRed(float red) |
设置色调(R) (0f-1f) | 1.0f |
setTintColorGreen(float green) |
设置色调(G) (0f-1f) | 1.0f |
setTintColorBlue(float blue) |
设置色调(G) (0f-1f) | 1.0f |
setTintAlpha(float alpha) |
设置色调透明度 (0f-1f) | 0.0f |
setDispersion(float dispersion) |
设置色散效果 (0f-1f) | 0.5f |
setBlurRadius(float radius) |
设置模糊半径 (0dp-50dp) | 0f |
setDraggable(boolean enable) |
开启和关闭拖动 | true |
效果说明
在 Android 13+ 设备上该库可以呈现完整的液态玻璃效果包括:
- 真实且可调节的折射效果
- 真实且可调节的色散效果
- 可调节的模糊效果
- 可调节的色调
在 Android 13 以下的设备上,该视图将保持透明背景,并且不会渲染任何效果
注意事项
1.采样源: 确保绑定的采样源视图包含有效内容 2.兼容性: 完整功能仅支持 Android 13+