问题标签 [drawable]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4266 浏览

android - Android:无法在 ImageView 中显示 png 图像

我正在编写一个包含 ImageView 的 Android 应用程序。要包含在视图中的图像位于模拟器的本地应用程序目录中。图像未显示在视图中。下面给出了用于显示图像的相关 XML 和方法。

图像文件是“png”格式文件,可以从本地应用目录打开。getFilesDir() 返回的路径包括完整路径“/data/data/net.vitalrecord.android/files”。此路径指定在开发系统上不存在,但在使用 DDMS 文件资源管理器时存在。

非常感谢您对此问题的任何帮助。

谢谢。

布局 XML:

方法:public void checkFilesExists() {

0 投票
6 回答
83631 浏览

android - 来自 URL 的 Android 可绘制图像

我目前正在使用以下代码将图像加载为可绘制对象形成 URL。

这段代码完全按照需要工作,但似乎存在兼容性问题。在 1.5 版中,FileNotFoundException当我给它一个 URL 时它会抛出一个。在 2.2 中,给定完全相同的 URL,它可以正常工作。以下 URL 是我提供此函数的示例输入。

如何以与 URL 全面兼容的方式加载图像?

0 投票
1 回答
2644 浏览

android - 在 Android 中打开 Activity 之外的资源

我试图通过将 context.getResources().getString(R.drawable.myimage) 的结果传递给另一个不是活动的类来打开资源。context.getResources().getString(R.drawable.myimage) 返回 res/drawable-mdpi/myimage.png 但是,当我尝试打开此文件时,它会引发 FileNotFoundException。

在活动之外打开资源的正确方法是什么?

0 投票
1 回答
2390 浏览

android - Android:如何在应用清单中引用可绘制库

我有一个免费的 android 应用程序,现在我想以免费(带广告)和付费(不带广告)的形式分发它,所以唯一的区别在于一些布局文件,我只是删除了付费版本中的广告。

我尝试将我现有的免费应用程序中的所有代码移动到我设置为库项目的新项目中,并且我正在从应用程序项目中引用库项目。在清单文件中。

我想要做的是在这个库项目中完全包含免费应用程序,并创建两个引用库的新应用程序项目,并更改付费应用程序的布局文件,删除广告。

我正在开发付费应用程序版本,但不知道如何在清单文件中引用应用程序图标的可绘制对象。

我对这一切都错了吗?非常感谢您的帮助。

0 投票
4 回答
7037 浏览

android - 自定义 OverlayItem 未绘制

我创建了一个自定义 OverlayItem 类,这样我基本上可以拥有一种 OverlayItem,它的 Drawable 标记会根据我传递给它的某些数据的状态来设置自己。

在我第一次尝试时,我试图通过使用setMarkerOverlayItem 类中的方法来实现这一点。一旦这不起作用,我会尝试覆盖该getMarker方法并让它返回适当的标记来表示数据。

这两次尝试都没有在地图上绘制任何内容......但是,如果将它们注释掉,则标记绘制得很好(当然它们使用默认标记,这不是我想要的)。

这是我的自定义 OverlayItem 类的代码(我尝试过的注释掉的方法,但它们没有用):

有没有办法做我正在尝试做的事情......或者我是否需要创建一个与我的数据的每个状态相对应的唯一 OverlayItem 类?(Ew。)

0 投票
2 回答
2471 浏览

android - 来自一个 xml 文件的多个可绘制对象

我想在我的应用程序中使用许多 ShapeDrawables,它们都相似,但颜色不同等。显然我可以将它们全部定义在单独的 xml 文件中,但是有没有一种更有效的方法来拥有一个 xml 定义,实例化各种对象并在代码或 xml 中更改颜色?您也许可以通过在 xml 中定义的一个 ShapeDrawable 上调用 mutate() 来做到这一点,但这会返回一个 Drawable,而不是一个可绘制的形状。

0 投票
0 回答
548 浏览

android - 为什么只有 50% 的可绘制对象被绘制?

我试图创建一个简单的应用程序,在触摸屏幕的地方绘制一个 png 图形。我遇到的问题是,实际上只有我添加的图形的所有其他实例才会被渲染。每次我添加一个新实例时,模式都会交替出现。我总是只得到 50% 的图形渲染。

我在 HTC Hero 上使用 android level 3。

为了进一步解释这个问题,这是我从表面保持器回调中调用的绘制方法:

当我将第 5 行和第 6 行注释掉时(如图所示),我只看到第 2 行和第 4 行渲染。当我添加第 5 行时,我看到第 1,3 和 5 行渲染。最后,当我添加第 6 行时,我看到第 2,4 和 6 行渲染。

为什么会这样?

更详细地解释应用程序的其余部分。我有以下布局xml:

即我有一个单一的表面视图,我将在其上绘制 png 图形。

我的活动实现了 SurfaceHolder.Callback 并像这样初始化:

即我链接调用,并使用 R 类设置内容视图。然后我获得对表面视图的引用并将活动注册为表面持有者回调。

我有一种将图标绘制到屏幕上的方法。就是这个:

即我锁定画布,获取可绘制的 png 资源,设置边界(使用 mutate 以防万一),并要求可绘制在画布上绘制自身。请注意,除非已创建曲面,否则我从不绘制。

我真的很困惑这里。

所有帮助表示赞赏。

ps 以下是完整列表:

0 投票
1 回答
2756 浏览

android - Android:覆盖应用程序中的可绘制滚动条

有没有办法替换应用程序中的可绘制滚动条(即我有一个自定义滚动条视图,我想使用它来代替 Android 框架附带的默认灰色滚动条)。我查看了所有的android属性,但似乎没有一个支持它(至少我知道的最简单的方法是如何将drawable设置为某个android属性)。

如果不是并说它需要更改框架,我会从哪里开始寻找它(在框架中)?

谢谢

MB

0 投票
1 回答
916 浏览

android - Canvas.DrawCircle VS ShapeDrawable.setBounds()

什么是在画布上绘制圆圈的更有效方法。

我可以通过两种方式做到这一点:

  1. 采用canvas.drawcircle(...)
  2. ShapeDrawable.SetBounds()其次是ShapeDrawable.draw(canvas)

什么渲染速度更快?有什么更好的做法?还是没关系?

0 投票
1 回答
1085 浏览

android - 避免android项目中的重复资源

我的可绘制文件夹中有一些图像,它们在可绘制区域中有横向版本。但是,我希望共享一些风景图像,因为用不同的名称复制文件似乎是一种浪费。是否可以为其中一个重复文件创建符号链接(快捷方式)或其他东西以防止浪费空间

下面的文件夹解释,因为我不擅长解释自己: