gpt4 book ai didi

android - 如何从库项目中的项目获取资源

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:27:18 24 4
gpt4 key购买 nike

情况是这样的:我有两个项目。假设一个 LibraryProject 和一个 MainProjectMainProjectLibraryProject 作为库引用。

我在 LibraryProject 中有一个 Activity 需要发现 MainProject 是否定义了一个特定的可绘制对象,比如说“logo.png”(认为 Logo 图像必须由每个`MainProject 定义,而不是由 LibraryProject 定义。

如何在 LibraryProject 的一个 Activity 中发现 MainProject 是否在 res/drawable 文件夹中有此图像?

显然我已经尝试查看是否 R.drawable.logo != 0(或它的变体),但如您所知,这一行将无法编译,因为图像不在LibraryProjectres/drawable 文件夹。

我也试过 getResources().getIdentifier("logo", "drawable", null) != 0 但是这个 bool 表达式总是返回 false,因为 .getIdentifier() 始终返回零。

有什么想法吗?

最佳答案

您可以试试这个:(但请记住,上下文始终是“ChildProject”)

public static Drawable getDrawable(Context context, String resource_name){
try{
int resId = context.getResources().getIdentifier(resource_name, "drawable", context.getPackageName());
if(resId != 0){
return context.getResources().getDrawable(resId);
}
}catch(Exception e){
Log.e(TAG,"getDrawable - resource_name: "+resource_name);
e.printStackTrace();
}

return null;
}

关于android - 如何从库项目中的项目获取资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15665386/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com