当前位置: 首页 > 知识库问答 >
问题:

Android-为另一个可绘制文件夹拍照

柴昆杰
2023-03-14

对于我的应用程序,我需要有2或3个不同大小的相同图像

或者,我想知道是否有可能从另一个可绘制文件夹中获取可绘制的内容(即:可以像这样使用具有不同分辨率的相同图像)

否则,我应该在每个可绘制文件夹(mdpi、hdpi、xhdpi)中多次复制相同的图像

例如:我在hdpi文件夹中有可绘制的ima,我需要在mdpi和xhdpi文件夹中提供的越来越小的相同图像=

对不起,我英语不好

谢谢你帮我

共有3个答案

谭曦
2023-03-14

我不确定我是否完全理解你,但对我来说,你应该合理地组织你的绘图,并把它们放在资产文件夹,而不是资源。然后你可以随心所欲地使用它们。

此外,我认为没有办法从另一个屏幕访问资源。

希望我能理解你的帖子。

编辑API Level 15引入的资源。getDrawableForDensity()方法。据我所知,没有办法在旧版本上启动它。

燕扬
2023-03-14

名为mdpi、hdpi、xhdpi的文件夹用于随机设备,我的意思是有用于具有随机屏幕的设备。屏幕上有4种android设备。小,普通,大,超大,这就是为什么有这些文件夹,为什么你不想改变你的图片名称?如果没有帮助,你能更清楚地解释你的问题吗?我不确定我是否正常回答了这个问题:)

问候Hayk Nahappetyan

西门正平
2023-03-14

以编程方式尝试这样做。。

InputStream is=this.getResources().getAssets().open("drawable.png");

is=this.getResources().openRawResource(R.raw.myDrawable); 

如果要使用路径,请尝试以下操作:

private void showImage() {
    String uri = "drawable/icon";

    // int imageResource = R.drawable.icon;
    int imageResource = getResources().getIdentifier(uri, null, getPackageName());

    ImageView imageView = (ImageView) findViewById(R.id.myImageView);
    Drawable image = getResources().getDrawable(imageResource);
    imageView.setImageDrawable(image);
}

但建议使用参考文献:

int imageResource = R.drawable.icon; 

Drawable image = getResources().getDrawable(imageResource);

来源

draable-hdpi draable-mdpi, draable-ldpi只是不同的文件夹,根据屏幕分辨率来区分图像质量。这个想法是将相同的图像放在不同分辨率的不同文件夹中...

 类似资料:
  • 在Android Studio中,我想不出要在应用程序内部使用的图像放在哪里。drawable文件夹没有被分解为drawable-hdpi、drawable-ldpi等。我看到另一个问题问这个问题,答案是切换到Project视图而不是Android视图,但drawable也只有一个文件夹。有mipmap-hdpi,mipmap-ldpi等,但人们说这只适用于应用图标。我很困惑。

  • 好的,我的res目录中有4个文件夹:drawable mdpi,drawable hdpi,drawable xhdpi,drawable xxhdpi。我想知道如何制作一个默认的可绘制文件夹,在那里我可以放置图像,如果在特定密度的文件夹中找不到图像,Android设备会在消噪文件夹中查找。所以我创建了一个没有限定符的名为drawable的。问题是,当我将图像放在新创建的文件夹中时,它与我将其放在

  • 我在android studio中创建了一个项目,android studio没有像过去那样创建可绘制hdpi、可绘制mdpi等可绘制文件夹密度。它创建了mipmap hdpi、mipmap mdpi等。 我读https://stackoverflow.com/a/28065664/2455259目录是用于启动器图标的。 您使用的任何其他可提取资产应像以前一样放置在相关的可提取文件夹中。 那么为什

  • 我必须将ant项目转换为gradle项目。在这里,当我运行gradle构建时,它创建了war文件,当它部署在服务器上时,分解的war文件夹有两个文件夹META-INF和WEB-INF,我的要求是1。将web.xml从图像中看到的config文件夹复制到WEB-INF文件夹,并将图像中看到的jsp文件夹复制到分解文件夹

  • //我得到的错误是java。尼奥。文件FileAlreadyExistsException所以据我所知,它试图将文件保存到确切的位置,而不是保存在文件中,如果我将目标地址改为“垃圾/垃圾”,我需要以这种方式保存几个文本文件。它将在那里保存一个名为垃圾的文件。txt。但在for-each的下一个循环中,它会抛出一个“已经存在”的异常。。。 有人能解释一下我如何从src文件夹将所有txt文件保存到该文

  • 如何使用java将文件从一个文件夹复制到另一个文件夹?我试图使用 如果目标文件夹不包含具有相同名称的文件,则此操作有效。如果我尝试将文件粘贴到文件夹中,它会引发IOException。然而,有什么办法可以解决这个问题吗?可能我只想将自动重命名为pasteItem(1)或类似名称的文件粘贴。请建议。 事实上,如果同名文件已经存在,我将为该文件获得一个新名称。我不知道如何复制文件,然后重命名。如果我先