首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

getDrawable(int id)已弃用。如何设置镜像?

在Android开发中,getDrawable(int id)方法已被弃用。取而代之的是使用ContextCompat.getDrawable(Context context, int id)方法来获取Drawable对象。

要设置镜像效果,可以使用以下步骤:

  1. 首先,确保你已经导入了support库,以便使用ContextCompat类。在build.gradle文件中添加以下依赖:implementation 'androidx.appcompat:appcompat:1.3.0'
  2. 在代码中,使用ContextCompat.getDrawable()方法获取Drawable对象,并将其赋值给一个变量,例如:Drawable originalDrawable = ContextCompat.getDrawable(context, R.drawable.my_drawable);
  3. 接下来,使用DrawableCompat类中的方法来创建镜像效果。使用DrawableCompat.wrap()方法将原始Drawable对象包装起来,然后使用DrawableCompat.setMirror()方法设置镜像效果。示例代码如下:Drawable mirroredDrawable = DrawableCompat.wrap(originalDrawable); DrawableCompat.setMirror(mirroredDrawable, true);
  4. 最后,将镜像效果的Drawable对象应用到你的视图中。例如,如果你想将镜像效果应用到ImageView中,可以使用setImageDrawable()方法:imageView.setImageDrawable(mirroredDrawable);

镜像效果常用于创建反射、翻转或镜像视觉效果。它可以应用于各种场景,例如创建镜像按钮、反射效果的图像展示等。

腾讯云相关产品中,与图像处理相关的产品是腾讯云智能图像处理(Image Processing)服务。该服务提供了丰富的图像处理功能,包括图像增强、图像识别、图像审核等。你可以通过以下链接了解更多关于腾讯云智能图像处理服务的信息:

https://cloud.tencent.com/product/imgpi

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Kotlin编译调校之WarningsAsErrors

通常情况下,开启后的作用,我们可以归纳为如下 发现更多的潜在问题和崩溃 减少不必要的代码(变量,参数) 发现不好的编码实践 发现更多的API问题 最终增加代码的健壮性和优雅程度 如下,我们会通过一些实践来说明一些问题...RequestManager.sInstance.timelineRequest } 上述的testInaccessibleType无法访问TimelineRequest的属性和方法 具体的解决办法,可以是设置...: Int) { println("onViewClicked id=$id") } } } 出问题的情况是当我们使用具名变量指定参数值时,可能出问题...System.currentTimeMillis().toString() println(message) } 建议手动移除多余的初始化 不建议压制警告 Deprecation (方法...(R.mipmap.ic_launcher) } 建议的方法是寻找替代方法的其他方法,以getDrawable为例,我们可以使用 ContextCompat.getDrawable(getActivity

1.4K20

K8S 1.20 Docker 评估之:Docker 和 OCI 镜像格式的差别

Docker 带来的,可能是一系列的改变,包括不限于: •容器镜像构建工具 •容器 CLI •容器镜像仓库 •容器运行时 专题文章《K8S 1.20 Docker 评估》会从多方面分析由此带来的变动和影响...目前有以下几种容器镜像格式: •❌:Docker Image V1[2] •:warning::Docker Image Manifest V2 Schema 1[3] •Docker Image...首先是 Docker V1 镜像,这是非常老旧且已经镜像格式,是 Docker 刚出来的时候,没有考虑多架构多平台(如:x86 和 arm 镜像),所以通常 Docker V1 镜像只有 x86...References [1] Open Container Initiative: https://opencontainers.org/ [2] ❌:Docker Image V1: https...://docs.docker.com/engine/deprecated/#interacting-with-v1-registries [3] :warning::Docker Image Manifest

2.7K20

C#-Xamarin的Android项目开发(二)——控件应用

重点,我们来看这句,background="@drawable/btn_weight;背景色指向了一个资源,为什么说指向的是个资源呢?因为btn_weight并不是个图片,而是个XML文件。。。。...没错,这种设置方法,确实很绕,按钮按下的事件和背景样式混在了一起设置,但在Android里,我们只能去适应它。...相信我,Xamarin开发,你在农耕社会还有个犁耙,AS开发,你会发现你只能用手挖。。。。 GridView 首先,Android的GridView是我见过最奇葩的列表使用方式。。。...下面我们看看它是如何混淆,不,他是如何工作的吧。 首先,在行导入的GetView中,我们找到要填充的布局XML——activity_label_item.xml。...下面我们为列表添加点击事件;代码如下: my_grid.ItemClick += (s, e) => { this.ShowToast("Click Me" + e.Id); }; 代码很简单,

1.3K40

【Android 应用开发】Paint 渲染 之 BitmapShader 位图渲染 ( 渲染流程 | CLAMP 拉伸最后像素 | REPEAT 重复绘制图片 | MIRROR 绘制反向图片 )

| 打开抗锯齿 | 绘制矩形 ) 位图渲染 : 1.主要实现的功能 : 位图渲染就是 将一个位图, 通过特定的方式绘制到指定的矩形区域中, 解决 Bitmap 位图的宽高 与 绘制区域宽高 不一致时如何进行渲染...Shader.TileMode.REPEAT : 绘图位置超出了边界, 使用 同样的位图进行平铺 剩余绘制的部分; ③ Shader.TileMode.MIRROR : 绘图位置超出了边界, 使用 位图反转镜像...getDrawable(R.mipmap.aodesai)).getBitmap(); //1....getDrawable(R.mipmap.aodesai)).getBitmap(); //1....创建位图渲染对象, 并设置拉伸方式, 此处设置Shader.TileMode.CLAMP, // 如果绘制的位置超出了图像的边界, 那么超出部分 使用镜像平铺方式填充

1.6K10

谷歌官方导航控件BottomNavigationBar的日常使用

BottomNavigationItem(R.mipmap.ic_launcher_round, mTitles[0])                         .setInactiveIcon(ContextCompat.getDrawable...BottomNavigationItem(R.mipmap.ic_launcher_round, mTitles[1])                         .setInactiveIcon(ContextCompat.getDrawable...bottomNavigationBar.show(false);//关闭动画效果   isHidden() 返回是否隐藏 3  BottomNavigationBar角标(小红点)Badges 基本使用 1.如何添加...String)/Color Border Width 设置border宽度 setBorderWidth() int (px值) Border Color 设置border颜色 setBorderColorResource...        android:id="@+id/bottomBar"         android:layout_width="match_parent"         android:layout_height

2K50

Android Notes|实用小技巧,不定期更新...

,参数依次为:当前 view id,对其约束位置,目标 view id,对其约束位置,margin动态设置比例xml 布局中通过如下设置比例:app:layout_constraintDimensionRatio...+ 文字效果如下图所示:实现重点:TextView 宽度自适应;设置 DrawPadding;设置 Padding代码设置加粗findViewById(R.id.comm_indicator_txt...(resId: Int) { val drawable = ContextCompat.getDrawable(mContext, resId)?....drawable 并指定宽高公共方法抽离:fun getDrawable(context: Context, resId: Int, right: Int = -1, bottom: Int = -1...文字超链接点击后,背景色如何消除highlightColor = R.color.trans.ColorInt跑马灯效果xml 布局中设置如下:(注意宽度要限制)android:ellipsize="marquee

7410

Android实现可点击展开的TextView

下面代码来详细描述实现的过程: 给TextView添加视图高度监听 /** * 添加监听 * @param tv 要实现伸缩效果的 TextView * @param desc...ImageSpan 来给 TextView 添加图标,但是普通的 ImageSpan 是不能响应点击事件的而且也不能设置图片的位置,那么我们要如何实现一个可以响应点击事件并且可以设置图片位置的 ImageSpan...getDrawable(); canvas.save(); int transY = 0; transY = ((bottom - top) - drawable.getBounds...savedInstanceState); setContentView(R.layout.activity_main); mTv = (TextView) findViewById(R.id.tv_test...: SpannableString和ImageSpan在textview中插入图片 自定义可点击的ImageSpan并在TextView中内置“View“ 以上就是本文的全部内容,希望对大家的学习有所帮助

2.2K20

在Android TextView中显示图片的4种方式详解

我们知道,TextView控件一般是用来显示文本的,而图片一般是ImageView控件来显示。 那TextView能否显示图片呢?答案是肯定的!下面列出常见的4种方式。...android:drawableLeft android:drawableTop android:drawableRight android:drawableBottom 比如我们要在TextView的顶部设置图片...(String source) { Log.d(TAG, "项目图片测试_source:" + source); int id = Integer.parseInt(source);...Drawable drawable = getResources().getDrawable(id, null); drawable.setBounds(0, 0, drawable.getIntrinsicWidth...start, int end, int flags)方法中的start和end值是图片来取代的文本范围,flags是用来标识在 Span 范围内的文本前后输入新的字符时是否把它们也应用这个效果。

6.3K20

Android UI设计与开发之ViewPager仿微信引导界面以及动画效果

这篇要实现的是一个仿微信的动画效果,虽然这种效果的实现在网上到处都有,但是我还是想站在中低端开发者的角度去告诉大家是如何实现的,当然实现的方式有很多,我也只是列出了我认为实现起来比较方便的一种方法,希望大家能够受用...(R.id.startBtn); } /** * 初始化数据 */ private void initData() { // 设置监听 viewPager.setOnPageChangeListener...(new MyOnPageChangeListener()); // 设置适配器数据 viewPager.setAdapter(vpAdapter); //将要分页显示的View装入数组中 views.add...views.add(view2); views.add(view3); views.add(view4); views.add(view5); views.add(view6); // 给开始按钮设置监听...arg0) { } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { } } /** * 相应按钮点击事件

66841

如何在Ubuntu 18.04上安装Docker Compose

这变得如此受欢迎,以至于Docker团队决定基于Fig源制作Docker Compose,现在。...在本教程中,我们将向您展示如何安装最新版本的Docker Compose以帮助您管理多容器应用程序。...准备 要阅读本文,您需要一台具有以下内容的Ubuntu 18.04服务器: 一台已经设置好可以使用sudo命令的非root账号的Ubuntu服务器,并且开启防火墙。...第3步 - 删除镜像(可选) 为避免使用不必要的磁盘空间,我们将删除本地映像。为此,我们需要使用docker rm命令删除引用该镜像的所有容器,然后删除CONTAINER ID或NAME。...请务必替换容器的ID: docker rm 06069fd5ca23 一旦删除了引用该镜像的所有容器,我们就可以删除该镜像: docker rmi hello-world 结论 我们现在已经安装了Docker

9.8K20
领券