【Android UI】Paint Gradient 渐变渲染 ② ( SweepGradient 梯度渐变渲染 | 围绕中心点绘制扫描渐变的着色器 | 多渐变色构造函数 | 雷达扫描效果 )

39 篇文章 11 订阅
订阅专栏





一、SweepGradient 梯度渐变渲染



PaintSweepGradient 梯度渐变渲染 ;

SweepGradient 是围绕中心点绘制扫描渐变的着色器。


SweepGradient 文档地址 : https://developer.android.google.cn/reference/android/graphics/SweepGradient



1、设置多个渐变颜色的构造函数


public SweepGradient (
				float cx, // The x-coordinate of the center
                float cy, // The y-coordinate of the center
                int[] colors, // The sRGB colors to be distributed between around the center. There must be at least 2 colors in the array. This value cannot be null.
                float[] positions // May be NULL. The relative position of each corresponding color in the colors array, beginning with 0 and ending with 1.0. If the values are not monotonic, the drawing may produce unexpected results. If positions is NULL, then the colors are automatically spaced evenly. This value may be null.
)

参数说明 :

  • float cx : x 轴中心点 ;
  • float cy : y 轴中心点 ;
  • int[] colors : 要在中心周围分布的sRGB颜色。阵列中必须至少有2种颜色。此值不能为null。
  • float[] positions : 可能为空。颜色数组中每个对应颜色的相对位置,从0开始,以1.0结束。如果值不是单调递增或者单调递减的,图形可能会产生意外的结果。如果位置为空,则颜色会自动均匀分布。此值可能为空。

public SweepGradient (
				float cx, // The x-coordinate of the center
                float cy, // The y-coordinate of the center
                long[] colors, // The colors to be distributed between around the center. There must be at least 2 colors in the array. This value cannot be null.
                float[] positions // May be NULL. The relative position of each corresponding color in the colors array, beginning with 0 and ending with 1.0. If the values are not monotonic, the drawing may produce unexpected results. If positions is NULL, then the colors are automatically spaced evenly. This value may be null.
)

参数说明 :

  • float cx : x 轴中心点 ;
  • float cy : y 轴中心点 ;
  • long[] colors : 围绕中心分布的颜色。阵列中必须至少有2种颜色。此值不能为null。
  • float[] positions : 可能为空。颜色数组中每个对应颜色的相对位置,从0开始,以1.0结束。如果值不是单调递增或者单调递减的,图形可能会产生意外的结果。如果位置为空,则颜色会自动均匀分布。此值可能为空。

代码示例 :

        mPaint.setShader(new SweepGradient(
                this.getWidth() / 2,
                this.getHeight() / 2,
                new int[]{Color.RED, Color.GREEN, Color.BLUE},
                new float[]{0F, 0.5F, 1.0F})
        );

在这里插入图片描述


2、设置两个渐变颜色的构造函数


public SweepGradient (
				float cx, 	// The x-coordinate of the center
                float cy,   // The y-coordinate of the center
                int color0, // The sRGB color to use at the start of the sweep
                int color1  // The sRGB color to use at the end of the sweep
)

参数说明 :

  • float cx : x 轴中心点 ;
  • float cy : y 轴中心点 ;
  • int color0 : 扫描开始时使用的sRGB颜色 ;
  • int color1 : 扫描结束时要使用的sRGB颜色 ;

public SweepGradient (
				float cx, 	// The x-coordinate of the center
                float cy,   // The y-coordinate of the center
                long color0, // The color to use at the start of the sweep
                long color1  // The color to use at the end of the sweep
)

参数说明 :

  • float cx : x 轴中心点 ;
  • float cy : y 轴中心点 ;
  • int color0 : 扫描开始时使用的颜色 ;
  • int color1 : 扫描结束时要使用的颜色 ;

代码示例 :

        mPaint.setShader(new SweepGradient(
                this.getWidth() / 2,
                this.getHeight() / 2,
                Color.GREEN, Color.BLUE)
        );

在这里插入图片描述





二、完整代码示例




1、设置多个渐变颜色的构造函数


package kim.hsl.paintgradient.sweep;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.RectF;
import android.graphics.SweepGradient;
import android.util.AttributeSet;
import android.view.View;

import androidx.annotation.Nullable;

public class SweepGradientView2 extends View {

    /**
     * 画笔工具
     * 线性渐变渲染 需要设置给该 画笔工具
     */
    private Paint mPaint;

    /**
     * 使用线性渐变绘制的区域
     */
    private RectF mRectF;

    public SweepGradientView2(Context context) {
        this(context, null);
    }

    public SweepGradientView2(Context context, @Nullable AttributeSet attrs) {
        this(context, attrs, 0);
    }

    public SweepGradientView2(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        initPaint();
    }

    @Override
    protected void onSizeChanged(int width, int height, int oldWidth, int oldHeight) {
        super.onSizeChanged(width, height, oldWidth, oldHeight);
    }

    /**
     * 初始化 画笔工具, 主要是设置该画笔的渲染
     */
    private void initPaint() {
        mPaint = new Paint();
        mPaint.setAntiAlias(true);
        mPaint.setStyle(Paint.Style.FILL);
    }

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);

        mPaint.setShader(new SweepGradient(
                this.getWidth() / 2,
                this.getHeight() / 2,
                new int[]{Color.RED, Color.GREEN, Color.BLUE},
                new float[]{0F, 0.5F, 1.0F})
        );

        canvas.drawCircle(this.getWidth() / 2, this.getHeight() / 2, 200, mPaint);
    }

}

2、设置两个渐变颜色的构造函数


package kim.hsl.paintgradient.sweep;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.LinearGradient;
import android.graphics.Paint;
import android.graphics.RectF;
import android.graphics.Shader;
import android.graphics.SweepGradient;
import android.util.AttributeSet;
import android.view.View;

import androidx.annotation.Nullable;

public class SweepGradientView extends View {

    /**
     * 画笔工具
     * 线性渐变渲染 需要设置给该 画笔工具
     */
    private Paint mPaint;

    /**
     * 使用线性渐变绘制的区域
     */
    private RectF mRectF;

    public SweepGradientView(Context context) {
        this(context, null);
    }

    public SweepGradientView(Context context, @Nullable AttributeSet attrs) {
        this(context, attrs, 0);
    }

    public SweepGradientView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        initPaint();
    }

    @Override
    protected void onSizeChanged(int width, int height, int oldWidth, int oldHeight) {
        super.onSizeChanged(width, height, oldWidth, oldHeight);
    }

    /**
     * 初始化 画笔工具, 主要是设置该画笔的渲染
     */
    private void initPaint() {
        mPaint = new Paint();
        mPaint.setAntiAlias(true);
        mPaint.setStyle(Paint.Style.FILL);
    }

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);

        mPaint.setShader(new SweepGradient(
                this.getWidth() / 2,
                this.getHeight() / 2,
                Color.GREEN, Color.BLUE)
        );

        canvas.drawCircle(this.getWidth() / 2, this.getHeight() / 2, 200, mPaint);
    }

}




三、效果展示



在这里插入图片描述

【Unity实战篇 】 | Unity实现UGUI颜色渐变,支持透明渐变
努力前行,总会成为自己心中的那道光
06-04 2万+
在Unity中UGUI的实现图片和文字颜色渐变效果是一个很常见的需求。 下面就来看一下颜色渐变效果是怎样实现的吧。 【Unity实战篇 】 | Unity实现UGUI颜色渐变,支持透明渐变
android Paint 渐变色
热门推荐
迟迟不吃的专栏
09-30 1万+
android Paint 渐变色 saint 2014年5月28日 Android, 移动 没有评论 一、LinearGradient线性渐变android平台中提供了两种重载方式来实例化该类分别为,他们的不同之处为参数中第一种方法可以用颜色数组,和位置来实现更细腻的过渡效果,比如颜色采样int[] colors数组中存放20种颜色,则渐变将会逐一处理。而第二种
Android Paint渐变色练习示例
03-17
Android 画笔paint渐变色 自定义View渐变色实现方式
使用代码设置渐变色 Android
最新发布
weixin_40376240的博客
08-08 279
Android中实现渐变色的完整指南 在Android应用开发中,设置渐变色是个常见而重要的需求,能够提升用户界面的美观程度。下面我们将详细介绍如何使用代码实现渐变色效果。本指南将以步骤的形式清晰呈现,并附上代码示例及其解释。 流程概述 在开始编写代码之前,我们需要了解实现渐变色的基本流程。以下是整体步骤的概述: ...
Android渲染器Shader:梯度渐变扫描渲染SweepGradient(二)
weixin_33852020的博客
07-25 193
 Android渲染器Shader:梯度渐变扫描渲染SweepGradient(二) 附录文章1介绍了线性渐变渲染器。 AndroidSweepGradient梯度渐变扫描,重点是在构造SweepGradient中心点选择。我写一个例子。 package zhangphil.demo; import android.content.Context; import and...
Android UIPaint Gradient 渐变渲染 ① ( LinearGradient 线性渐变渲染 | 设置渲染方向 | 设置渲染颜色 | 设置渲染模式 | MIRROR )
让 学习 成为一种 习惯 ( 韩曙亮 の 技术博客 )
05-30 4241
一、LinearGradient 线性渐变渲染、 1、设置 2 个颜色的渐变、 3、设置多个颜色的渐变、 二、LinearGradient 线性渐变渲染重要参数分析、 1、正常渲染、 2、设置多个渐变颜色渲染、 3、设置渲染方向、 4、设置 Shader.TileMode.MIRROR 渲染模式、 5、设置 Shader.TileMode.REPEAT 渲染模式、 三、代码示例
Android 颜色渲染(八) SweepGradient扫描/梯度渲染
844604778
09-02 284
Android 颜色处理(八) SweepGradient 扫描/梯度渲染 为什么什么叫扫描渲染呢? 相信大家都看过雷达扫描效果,尤其是在安全软件中. public SweepGradient(float cx, float cy, int[] colors, float[] positions) Parameters: cx 渲染中心点x 坐标 cy 渲染中心y 点坐标 ...
Android SweepGradient 扫描渲染
geekCode
03-22 651
概述 记的之前看到一个通过扫描渲染实现的雷达效果UI。自己在复习shader,在此做一个记录。 SweepGradient 扫描渐变 构造函数参数说明 public SweepGradient(float cx, float cy, @ColorInt int color0, @ColorInt int color1) 参数(cx,cy)表示扫描渲染围绕的圆心点坐标,color0 代表渲染...
Android LinearGradient 线性渐变渲染
05-30
Android UIPaint Gradient 渐变渲染 ① ( LinearGradient 线性渐变渲染 | 设置渲染方向 | 设置渲染颜色 | 设置渲染模式 | MIRROR ) https://blog.csdn.net/shulianghan/article/details/125047457 博客配套源码 ...
Android实现 Shape属性gradient 渐变效果
01-04
【1】<gradient>用以定义渐变色,可以定义两色渐变和三色渐变,及渐变样式;  <?xml version=1.0 encoding=utf-8?><shape xmlns:android=http://schemas.android.com/apk/res/android> <gradient  ...
Android SweepGradient类介绍
luo44671854的专栏
03-24 2966
Android 颜色处理(八) SweepGradient 扫描/梯度渲染 为什么什么叫扫描渲染呢?  相信大家都看过雷达扫描效果,尤其是在安全软件中. public SweepGradient(float cx, float cy, int[] colors, float[] positions) Parameters: cx
SweepGradient梯度渲染并旋转
07-22
SweepGradient梯度渲染并旋转,文章分析:http://blog.csdn.net/yegucheng2618/article/details/38042789
Android绘图之SweepGradient(10)
lidongxiu0714
12-24 7394
SweepGradient扫描渐变 SweepGradient可以实现扫描渐变渲染,类似雷达扫描图,渐变圆弧,渐变进度条等,构造函数有两个: /** * A Shader that draws a sweep gradient around a center point. * * @param cx The x-coordinate of the center * @param...
android渐变的实现和SweepGradient 圆形渐变重点注意
lidongxiu0714
11-06 1万+
Android 的自定义View神通广大,可以实现各种复杂的样式,渐变圆弧就是其中的一种。 1 shape 实现渐变 这个比较简单就是定义一个渐变的shape。 &amp;amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;amp;gt; &amp;amp;lt;shape xmlns:android=&amp;quot;
SweepGradient
星火幽光的博客
01-02 295
扫描渲染SweepGradient
Android Paint 绘制空心渐变圆角矩形
qq_43203444的博客
09-16 1482
在onDraw()中使用Paint绘制空心的圆角矩形。
Android日常开发 - 详解Paint搭配SweepGradient实现扫描渐变
qq_42948831的博客
05-18 1615
SweepGradient扫描渐变,一般作用对象是圆或者弧线,从3点钟方向开始绘制。这篇文章告诉你它的使用并且还有相关拓展知识。
Android Canvas 绘制渐变线
WULILL的博客
04-23 1747
Android Canvas 绘制渐变线条
写文章

热门文章

  • 【Android 应用开发】Android 开发环境下载地址 -- 百度网盘 adt-bundle android-studio sdk adt 下载 181214
  • 【音乐理论】音与音高 ( 音区 | 小字一组 | 小字组 | 大字组 ) 92088
  • 【Android 应用开发】GitHub 优秀的 Android 开源项目 87929
  • 【C 语言】文件操作 ( fwrite 函数 ) 78357
  • 【Android 应用开发】Android 开发 之 JNI入门 - NDK从入门到精通 72714

分类专栏

  • JavaScript 91篇
  • OpenHarmony 22篇
  • 音视频原理 14篇
  • CSS 142篇
  • GIS 2篇
  • Java AWT / Swing 图形界面编程 42篇
  • Kotlin 协程 44篇
  • Midjourney 20篇
  • 开阔视野 1篇
  • 数据结构 11篇
  • 移动端网页布局 32篇
  • RxJava 3篇
  • HTML 26篇
  • ARCore 1篇
  • JDBC 6篇
  • Redis 18篇
  • 系统架构设计师 19篇
  • ChatGPT
  • FPGA 芯片设计 1篇
  • Android OpenCV 4篇
  • 数学分析 2篇
  • Android 屏幕适配 13篇
  • Android UI 39篇
  • Android RenderScript 3篇
  • Linux 内核 159篇
  • Linux 内核简介 24篇
  • Linux 内核 进程管理 47篇
  • Linux 内核 内存管理 87篇
  • VMware 20篇
  • Android WebSocket 2篇
  • ijkplayer 18篇
  • 数字信号处理 99篇
  • LaTeX 语法 2篇
  • 五线谱 15篇
  • 短视频运营 13篇
  • Android Gradle 插件 188篇
  • Groovy 143篇
  • Git 23篇
  • Windows 逆向 25篇
  • Android 逆向 203篇
  • Android 命令行工具 1篇
  • Python 140篇
  • EventBus 24篇
  • AOP 6篇
  • IOC 8篇
  • 字节码插桩 3篇
  • Java 虚拟机原理 26篇
  • Android 启动过程 8篇
  • 每日随笔 110篇
  • SeeMusic 11篇
  • BLE MIDI 9篇
  • Java 泛型 4篇
  • Google Play 33篇
  • Android 事件分发 16篇
  • Android TV 开发 2篇
  • OkHttp 7篇
  • 插件化 48篇
  • FFmpeg 60篇
  • 人工智能 20篇
  • 算法 29篇
  • 组件化 19篇
  • 广告接入 1篇
  • Android APT 23篇
  • Android Gradle
  • Java 注解 5篇
  • Serverless 3篇
  • 密码学 1篇
  • MATLAB 42篇
  • Qt 6篇
  • Cubase 1篇
  • OpenGL 24篇
  • Android Binder 系统 12篇
  • Android 文件管理 6篇
  • CMake 3篇
  • 鸿蒙 HarmonyOS - Java 版 21篇
  • 音频处理 15篇
  • FluidSynth 2篇
  • Netty 27篇
  • NIO 12篇
  • 计算理论 70篇
  • 音乐理论 3篇
  • Android 性能优化 189篇
  • Android 启动优化 9篇
  • Android 布局渲染优化 6篇
  • Android Protobuf 序列化 8篇
  • Android 安装包优化 38篇
  • Android 电量优化 13篇
  • Android 内存优化 28篇
  • Android 进程保活 15篇
  • Android CPU 优化 1篇
  • Android 热修复 14篇
  • Android 异步操作 23篇
  • Android 安全 49篇
  • 数学 122篇
  • 数理逻辑 13篇
  • 图论 1篇
  • 集合论 34篇
  • 组合数学 70篇
  • 数据挖掘 54篇
  • 计算机网络 92篇
  • TarsosDSP 1篇
  • 软件工程 6篇
  • 设计模式 41篇
  • DBMS 数据库管理系统 10篇
  • OpenGL ES 2篇
  • Android 20篇
  • Android 基础 20篇
  • Android 应用开发 64篇
  • Android NDK 开发 27篇
  • Android 高性能音频 25篇
  • ConstraintLayout 10篇
  • Jetpack 35篇
  • RecyclerView 17篇
  • Android FFMPEG 开发 28篇
  • Android 动画 1篇
  • Android 帧动画
  • Android 属性动画 3篇
  • Android View 动画
  • Android 返回堆栈管理 7篇
  • Android RTMP 26篇
  • 错误记录 301篇
  • Android 系统开发 6篇
  • java 1篇
  • Kotlin 102篇
  • Objective-C 9篇
  • Java 网络编程 18篇
  • Java 并发编程 18篇
  • Flutter 139篇
  • IOS开发 14篇
  • Linux 操作系统 2篇
  • 运筹学 73篇
  • C 142篇
  • iOS 应用开发 10篇
  • 嵌入式开发 20篇
  • 嵌入式开发 15篇
  • Java 集合 2篇
  • UI 设计 1篇
  • 开发环境 67篇
  • UML 5篇
  • Unity3D 42篇
  • 音乐
  • C++ 250篇
  • 英语 2篇
  • 词汇 2篇

最新评论

  • 【C 语言】字符串模型 ( 字符串翻转模型 )

    偶是老李头: while (p_start < p_end) 走不进去呢?

  • 【FFmpeg】FFmpeg 函数简介 ① ( 注册和初始化函数 | avformat_network_init 函数 | avdevice_register_all 函数 )

    小码农叔叔: 优质好文,博主文章干货很多,技术细节把控非常好,实用性不错,对日常工作很有帮助,感谢博主的分享,期待博主持续更新!同时也期待博主的指点哦

  • 【FFmpeg】FFmpeg 函数简介 ① ( 注册和初始化函数 | avformat_network_init 函数 | avdevice_register_all 函数 )

    陈橘又青: 这篇博客让我对某个领域产生了浓厚的兴趣,强烈推荐给大家。并且让我想起了我这篇文章也有异曲同工之妙,欢迎前来指点我一番!我必然用心回报!

  • 【开发环境】安装 Visual Studio Community 2013 开发环境 ( 下载 Visual Studio Community 2013 with Update 5 版本的安装包 )

    wqh331441: 去搜索镜像版,还有的

  • 【FFmpeg】FFmpeg 函数简介 ① ( 注册和初始化函数 | avformat_network_init 函数 | avdevice_register_all 函数 )

    韩楚风: 优质好文,博主的文章细节很到位,兼顾实用性和可操作性,感谢博主的分享,期待博主持续带来更多好文

大家在看

  • 酒吧收银系统解决方案——未来之窗行业应用跨平台架构 528
  • 足浴店+闸机+智能衣柜+门票系统一体化管理系统解决方案——未来之窗行业应用跨平台架构 319

最新文章

  • 【FFmpeg】FFmpeg 函数简介 ① ( 注册和初始化函数 | avformat_network_init 函数 | avdevice_register_all 函数 )
  • 【FFmpeg】FFmpeg 播放器框架 ④ ( FFmpeg 库结构 | AVUtil 库 | AVFormat 库 | AVCodec 库 | AVFilter 库 | SWScale 库 )
  • 【FFmpeg】FFmpeg 播放器框架 ③ ( FFmpeg 中的音视频相关术语 | 容器 | 媒体流 | 数据帧 | 数据包 | 编解码器 | 复用器 | 解复用器 )
2024
10月 3篇
09月 5篇
08月 18篇
07月 24篇
06月 52篇
05月 41篇
04月 45篇
03月 50篇
02月 14篇
01月 56篇
2023年820篇
2022年799篇
2021年1255篇
2020年697篇
2019年97篇
2018年14篇
2017年5篇
2016年7篇
2015年30篇
2014年71篇
2013年24篇

目录

目录

分类专栏

目录

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家平凉玻璃钢雕塑多少钱女王节商场美陈安徽景观玻璃钢雕塑厂家动物玻璃钢雕塑代理加盟洛阳镜面玻璃钢人物雕塑厂家天津个性化玻璃钢雕塑销售厂家商场美陈管理规范汕头玻璃钢雕塑价格表深圳能透光玻璃钢雕塑工艺景观玻璃钢动物雕塑尺寸河北创意玻璃钢雕塑供应商南京玻璃钢雕塑雕刻厂家黑龙江玻璃钢卡通雕塑天津大型商场创意商业美陈作品腾冲市玻璃钢雕塑生产厂家河北大型商场美陈售价河南玻璃钢商场美陈雕塑西山区玻璃钢雕塑报价银川城市玻璃钢雕塑定做玻璃钢动物雕塑图片威海玻璃钢卡通雕塑厂家金昌户外玻璃钢雕塑美陈玻璃钢人物雕塑厂家现货玻璃钢花盆使用寿命多长佛山玻璃钢卡通蜜蜂雕塑青海玻璃钢景观雕塑公司西安砂岩玻璃钢浮雕雕塑海南玻璃钢雕塑大全餐饮玻璃钢浮雕景观雕塑定做佛山主题玻璃钢蝴蝶雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化