2017-07-08 11 views
0

インターネットからダウンロードしたイメージをアンドロイドスタジオmainactivity xmlファイルにコピーしようとしましたが、イメージをコピーしてドロワブルリソースフォルダ、しかし、いくつかの理由で、私はこれが私の前の画像がまったく同じ方法では、このような他の画像を除き、エラーがなかったコピーされたとして、私はこのエラーを取得しています初めてです「1つまたは複数のクラスをインスタンス化できませんでした」のエラーが発生しました1。 PNGやJPG形式と関係がありますか?Gradleファイルでプロジェクトを再同期しようとしましたが、それはまだ同じです。この例外を解決するにはどうすればよいですか?ありがとうございました。イメージをメインアクティビティXMLファイルにインポートした後にjava.lang.NullPointerExceptionをスローしました

1)the process of copying and pasting image to drawable

2)The error itself after pasting the image

java.lang.NullPointerException 
at android.content.res.Resources_Delegate.getValue(Resources_Delegate.java:788) 
at android.content.res.Resources.getValue(Resources.java:1286) 
at android.support.v7.widget.AppCompatDrawableManager.createDrawableIfNeeded(AppCompatDrawableManager.java:236) 
at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:199) 
at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:190) 
at android.support.v7.content.res.AppCompatResources.getDrawable(AppCompatResources.java:100) 
at android.support.v7.widget.AppCompatImageHelper.loadFromAttributes(AppCompatImageHelper.java:54) 
at android.support.v7.widget.AppCompatImageView.<init>(AppCompatImageView.java:66) 
at android.support.v7.widget.AppCompatImageView.<init>(AppCompatImageView.java:56) 
at sun.reflect.GeneratedConstructorAccessor1111.newInstance(Unknown Source) 
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
at java.lang.reflect.Constructor.newInstance(Constructor.java:423) 
at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:475) 
at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:250) 
at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:213) 
at com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadClass(LayoutlibCallbackImpl.java:193) 
at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:333) 
at android.view.BridgeInflater.onCreateView(BridgeInflater.java:152) 
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:717) 
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:785) 
at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:222) 
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:727) 
at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:858) 
at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70) 
at android.view.LayoutInflater.rInflate(LayoutInflater.java:834) 
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821) 
at android.view.LayoutInflater.inflate(LayoutInflater.java:518) 
at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:324) 
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:429) 
at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:368) 
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:567) 
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:549) 
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:863) 
at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:549) 
at com.android.tools.idea.rendering.RenderTask.lambda$inflate$1(RenderTask.java:680) 
at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
at java.lang.Thread.run(Thread.java:745) 

編集:私は、コードをコンパイルしようとすると、私が原因私の描画可能なフォルダ内の画像ファイルを削除しない限りまた、私のプロジェクトを開始would'ntこのエラー: `Error:タスク ':app:mergeDebugResources'の実行に失敗しました。

C:\Users\TP_baseline\AndroidStudioProjects\COMTProject(MeloWide)\app\src\main\res\drawable\icons8-Medal-80.png: Error: '-' is not a valid file-based resource name character: File-based resource names must contain only lowercase a-z, 0-9, or underscore`

+1

説明の誤りメッセージ... 'ファイルベースのリソース名には小文字のaz、 、 –

答えて

3

画像には名前にダッシュが付いています。 icons8-Medal-80.png

アンダースコアに置き換えてください。

のみ小文字の英数字(および下線)エラーに示されるように、リソース名は、許可されています。

+1

underscore'私は名前の名前を変更しようと、それが機能するようになりましたか...私は今LOL、ありがとうので、ダム感じたことはありません! – Bongchi

+0

うん、Androidのエラーメッセージは、通常はかなり理解できるか、検索可能です –

0

問題は2つの条件で発生します。 1)アンドロイドのリソース名には、小文字のa〜z、0〜9、またはアンダースコアのみを含める必要があります。 2)イメージが壊れている場合は、このタイプのエラーを提供してください。リソースをチェックインしてください。イメージファイルが壊れています。

関連する問題