[英]Android resource not found exception?
我在使用 findViewById(id) 時遇到了一個奇怪的問題。 即使資源肯定存在,它也會返回未找到資源。 它是另一個文本視圖旁邊布局中的文本視圖,我可以通過 id 找到其中一個文本視圖,但另一個顯示未找到資源。 是否有任何原因可能會發生這種情況?
確保您不是真的只是試圖將文本設置為數字並期望它自動轉換為字符串。
嘗試清理您的項目或發布一些代碼。
如果您使用 Eclipse,有時 ID 無法正確重新生成。 這需要清理項目,有時還需要刷新。
拋出的異常消息不是很具有描述性。 很可能是您嘗試將int值轉換為String ,應用以下更改為我解決了該問題。
修復前的代碼:
itemPrice.setText(foodMenuItems.get(position).getItemPrice());
修復后的代碼:
itemPrice.setText(Integer.toString(foodMenuItems.get(position).getItemPrice()));
只是為了澄清 Terra Caines 的回答,因為我看到人們經常遇到這種情況; TextView
和其他文本組件有 2 個帶有 1 個參數的setText()
函數。
其中一個是String
,一個是 int。 int
顯然用於字符串資源,例如R.string.myString
- 對於那些不知道的人來說, R.exm
總是表示為int
。 字符串用於將字符串放在那里。
所以例如我想把 int x = 1;
在文本視圖中。 做mTextView.setText(x);
將導致 textView 使用資源函數,並且由於可能沒有 id 為 1 的資源,它將拋出異常 Resource not found。 如果您想在 setText() 函數中放置一個 int 或任何數字,請確保將其轉換為String
(x+"")
或(x.toString())
將為您解決問題。
希望它為人們節省了一些時間。
textViewCount.setText(someArray.size());
是我的問題。
只需調用toString();
解決問題。
Integer size = mSomeArray.size();
textViewReplyCount.setText(size.toString());
確保您沒有以編程方式設置任何不可用的屬性。 我有同樣的問題,原因是RemoteView.setFloat(id,"setWeight",1.0f);
到 4.x 之前的 Android 不支持的LinearLayout
不幸的是,錯誤消息對此沒有太大幫助。
就我而言,我有一個int
變量(在我的 Activity 類之上),我試圖將該 int 變量作為第二個參數傳遞給Toast.makeText()
(向用戶展示),我不知道我是愚蠢的或android開發平台是! :p
檢查清單文件的應用程序標簽下android:icon="@mipmap/ic_launcher"
存在android:icon="@mipmap/ic_launcher"
屬性。
我的情況是,我試圖將帶有項目 android:color 的可繪制選擇器傳遞給視圖背景。 這里的問題是你不能使用顏色選擇器定義背景顏色,你需要一個可繪制的選擇器。
就我而言,在 res/menu/(xml 文件) 中,在那個 xml 文件中,我使用了導致錯誤的 png 圖標,您應該只使用矢量圖標。 此錯誤顯示在 android 6(marshmallow) 而不是更高版本中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.