2016-01-12 13 views
6

私はSO herehereに二つの関連の問題を発見した私はアンドロイドのエラーを修正する方法 '色の値は#で始める必要がありますか?'

<ImageButton 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:src="@drawable/ic_backspace_black_24dp" 
/> 

を次のように私のレイアウトでthis pageからアイコンを使用しようとしていたが、それが原因でエラー

Color value '@drawable/ic_backspace_black_24dp' must start with # 

をレンダリングすることができませんでした問題の解決には役立たなかった。

ファイル名にダッシュ( ' - ')はなく、ファイル形式は 'png'で、プロジェクトにはres/colorというディレクトリはありません。

colors.xmlで定義されているすべての色は、#で始まります。

このエラーを解決するにはどうすればよいですか?

+0

あなたのドロウアブルファイルの内容は何ですか? – Karakuri

答えて

3

問題解決:インターネット上のアンドロイドソースが古くなっていることを忘れてしまいました。ほとんどのドキュメントがそのまま動作しています。

android developer guideで提案されているres/drawableのフォルダは推奨されていません。フォルダの名前はmipmapになりました!だから、簡単な解決策は、問題を解決するために次のレイアウトを持つことです:

<ImageButton 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:src="@mipmap/ic_backspace_black_24dp" 
/> 

アンドロイドの開発者のドキュメントを信用しないでください!

+1

図形、レイヤーなどに 'drawable /'を使用することはできますか? – mbmc

+0

私はこの問題を抱えていましたが、明らかに画像ファイル名と関係していました。 –

+1

私の問題を解決しました!変更可能なdrawableをmipmapに変更しました! –

0

ファイルdrawable/ic_backspace_black_24dpを確認してください。

SVGバージョンをダウンロードした場合は、テキストファイルとして開くことができます。 android:fillColorに#があるかどうかを確認します。あなたは、Android Studioを使用している場合はとにかくこれらのアイコンは、ベクトル資産Studioを使用して非常に簡単にダウンロードすることができ

  • 新しい
  • ベクトル資産
  • がしたいアイコンを選択し、描画可能
  • にクリック

この機能の詳細情報はhereです。

2

「_」アンダースコアを削除してみて、名前を短くする。理由はわからないが、それは私のために働いた。

3

を単純に数字を削除して、ファイル名を変更し、唯一の小文字またはアンダースコアを保つ。

+0

私は文字以外のすべてを取り除かなければなりませんでした。マジック。 – alicjab

+0

はい、これは機能します。 – madu

関連する問題