草庐IT

android - 在 SurfaceView Canvas 上平铺位图

我在平铺Bitmap时遇到问题。我想将Bitmap绘制到2DArray中定义的坐标。我希望能够在某些坐标上绘制“草”,在其他坐标上绘制“水等”。我花了几天时间试图解决这个问题,非常感谢任何见解。我只能让Canvas绘制1个“草”Bitmap,所以我觉得我的for循环有错误。我看过here和here,在许多其他中,并且不希望每个瓷砖都相同。这是我的代码:MapLoader.javapublicclassMapLoaderextendsSurfaceViewimplementsSurfaceHolder.Callback,Runnable{SurfaceHolderholder;Threa

android - Android BigPictureStyle 推送通知中的图像/位图大小应该是多少?

我想在通知中清楚地了解BigPictureStyle位图的图像大小。我浏览了一些教程,但找不到有关此位图的尺寸规范。一些被告知具有2:1的纵横比。我想要一些清晰度,例如中推荐的位图/图像大小NotificationCompat.BigPictureStyles=newNotificationCompat.BigPictureStyle().bigPicture(bitmap_image);s.setSummaryText("Summarytextappearsonexpandingthenotification");notificationBuilder.setStyle(s);请指导

android - 将位图添加到可绘制资源

如何将从网络(我的意思是在应用程序中!)获取的位图添加到可绘制资源?所以我可以使用R.drawable.bitmapName访问Bitmap... 最佳答案 安装应用后,您将无法修改该文件夹。在这种情况下,您必须将位图复制到一个文件并从那里访问它。看看这个其他问题:Savebitmaptolocation 关于android-将位图添加到可绘制资源,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/qu

java - Java Android 中的位图回收()

需要一些帮助来理解类Bitmap的recycle()方法。例如,如果我有一个名为“bmp”的位图[],那么这两者之间有什么区别Bitmap[i].recycle()和Bitmap[i]=null;最好的选择是什么?我应该同时调用两者吗?谢谢 最佳答案 根据thisquestion,位图数据存储在native内存中而不是Dalvik堆中。完成后,您应该调用recycle()释放存储位图的内存。之后将其设置为null是一种很好的做法,尽管这有点多余。另请参阅API:http://developer.android.com/referen

java - Android 围绕中心旋转位图而不调整大小

我正在努力围绕其中心绘制一个旋转位图,并在不调整位图大小的情况下进行旋转。我正在通过游戏线程将我所有的Sprite绘制到屏幕上,所以我正在寻找一种包含原始位图而不是Canvas的解决方案。提前致谢。到目前为止,这是我的代码,它围绕其中心旋转位图,但调整它的大小。i=i+2;transform.postRotate(i,Assets.scoresScreen_LevelStar.getWidth()/2,Assets.scoresScreen_LevelStar.getHeight()/2);BitmapresizedBitmap=Bitmap.createBitmap(Assets.s

android - 如何使用位图作为通知图标

我想在一张图片上画点什么,画完之后就是一张位图。我想将此位图作为图标添加到通知中。但它的图标必须是一个intId。我怎样才能做到?谢谢你的回答~~~~请帮助我! 最佳答案 从这里Post我开始知道通知图标将采用资源图像。所以你不能在小图标中做动态。但是您可以从ApiLevel11开始使用大图标。为此你可以使用Notificaiton.BuilderReferhere还有其他方法。也就是说,您可以更改下拉通知时出现的图标。为此,您必须使用RemoteViewsReferhere 关于and

android - 在android中缩放和平移位图

我正在尝试销售位图并在每个步骤中对其进行翻译。如果我们看下面的代码,我正在绘制一个图像,对其进行平移和缩放,然后反向执行相同的操作以恢复原始配置。但是在应用这些操作之后,我确实得到了原始缩放图像(缩放因子1),但是图像被平移到不同的位置。你能指出正确的方法吗?(在上面的例子中,如何到达原始配置?)protectedvoidonDraw(Canvascanvas){super.onDraw(canvas);Matrixmatrix=newMatrix();scale=(float)screenWidth/201.0f;matrix.setTranslate(-40,-40);matrix

java - 我可以使用 C++ 中的 Android NDK 创建位图并将它们快速传递给 Java 吗?

我需要使用ndk在C++中创建位图并将它们传递给Java。我不是说复制,而是实际上将它们作为参数或返回值或其他类似的东西传递,因为复制它们太慢了。我也真的需要在NDK部分而不是在java中创建它们。有谁知道这样做的方法吗? 最佳答案 正如PeterLawrey已经指出的那样,使用非Java对象是不可能的,但是可以直接从简单的Java字节数组(可以在C++端直接访问)绘制原始数据。最后你甚至可以调用Canvas.drawBitmap(..)使用此字节数组绘制您创建的图像。当然,这需要将图像直接以字节数组中所需的格式存储在C++端。Ja

android - 使位图的某些区域在触摸时透明 --> 再次

我正在尝试实现与每个线程相同的结果:Makecertainareaofbitmaptransparentontouch.我坚持使用此答案中提供的代码:Lumisanswer根据SteD的说法,此解决方案应该有效。不幸的是,它对我不起作用(对另一个用户也是如此:Makecertainareaofbitmaptransparentontouchdoesn'tworks,it'sdrawablackcircle),我只是变成了黑圈。我尝试了很多东西但没有解决这个问题。根据第二个线程的建议使背景透明没有任何区别。经过多次实验我发现当我设置这个时透明度是有效的android:theme="@an

android - 在 Canvas 上移动位图

我有一个imageView、Canvas和一个按钮..当我单击按钮时,会在Canvas上绘制位图我想使用我的onTouch移动该位图(将位图拖到Canvas上的任何位置)。s.setOnItemClickListener(newOnItemClickListener(){publicvoidonItemClick(AdapterViewparent,Viewv,intposition,longid){BitmapworkingBitmap=Bitmap.createBitmap(currentBitmap);workingBitmap=Bitmap.createBitmap(worki