[英]Android: Drawable from library project to app
我目前正在為Android創建一個付款SDK,因此我想根據不同情況從sdk / library項目向實際應用程序發送一些圖像。 我希望應用程序的用戶使用可繪制對象,但是我不希望他們手動設置它(即直接從SDK的可繪制文件夾中獲取它),SDK應該根據不同情況自動選擇要使用的圖像。
目前,我擁有的是一個DAO類,在初始化時它具有類似以下內容:
case (MASTERCARD):
this._logo = getResources().getDrawable(R.drawable.mastercard_securecode);
然后在應用程序中,我希望能夠獲取該drawable並在ImageView中使用它,如下所示:
img.setImageDrawable(DAOObject.getLogo());
但是當運行此我得到
06-15 15:25:18.933:W / dalvikvm(625):VFY:無法解析LPackagePath / R $ drawable中的靜態字段6(mastercard_securecode);
后跟一個nullpointer異常,因為上述錯誤,getLogo將返回null。
任何人都知道如何正確實施此操作,這樣我就不會出現上述錯誤,並且仍然能夠以這種方式在應用程序獲取可動態發送的drawable的情況下實現它?
任何幫助深表感謝!
好吧,我終於明白了。
問題確實是上下文。 我需要將上下文從應用程序傳遞到SDK中,然后通過執行以下操作可以正確獲取圖像
context.getResources().getDrawable(R.drawable.mastercard_securecode);
其次,我需要將jar文件導入一個庫項目中,然后將圖像導入該第二個庫項目中,以便它本身的SDK是封閉源,但我仍然有可用的資源。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.