簡體   English   中英

從Android中的庫項目訪問可繪制的資源

[英]Accessing drawable rescources from a library project in Android

我正在嘗試從我的圖書館項目中搜索android中資源文件中的drawable(圖片),是否可能沒有實際android項目的上下文,或者是否需要添加? 另外,如何通過使用字符串作為ID名稱通過我的圖書館項目找到ID,然后將其轉換為適當的整數以設置背景資源。

到目前為止,這是我嘗試過的方法:可以,但是僅查看庫項目中的資源,我需要查看當前應用程序項目中的資源

  try
            {
                Class res = R.drawable.class;
                Field field =
                    res.getField("string_ID_I_want");
                drawableId = field.getInt(null);
            }

實際的可繪制資源已編譯到您的應用程序中,因此訪問它們與訪問常規應用程序資源沒有什么不同。

假設庫中可繪制的ID為big_picture。 然后R.drawable.big_picture是要加載的可繪制對象的ID。 您不必使用自省。 如果R.drawable.big_picture不可用,則您的項目設置有問題(或編譯錯誤)。

您的庫項目的軟件包名稱是什么。

如果您的軟件包名稱為com.examplelib.blahblah而您的可繪制對象稱為myicon ,則只需確保

import com.examplelib.blablah.R;

然后,在導入此R的同一文件中,只需鍵入R.drawable.myicon

Context context = getApplicationContext();
Resources r = context.getResources();
r.getDrawable(id);  //pass your drawable id in it, could be R.id.whatever

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM