Nachdem ich einige Vektorzeichen hinzugefügt hatte, bemerkte ich, dass einige der vorherigen nicht funktionierten (etwa 11). Mit dem Rest von ihnen habe ich keine Probleme - sie werden richtig gezeigt. Ich verknüpfe jedes Zeichen in der Java-Klasse mit einer Methode wie image.setImageResource(R.drawable.path_to_image);
und die meisten von ihnen sind ohne Probleme verknüpft. Ich habe so ein Problem mit nur ein paar. Nach einer App ausgeführt wird und versucht, diese Drawables zu zeigen, dass ich solche Fehler bekam:Einige Zeichenvorlagen können nicht gefunden werden
Unable to find resource: 2131099763
android.content.res.Resources$NotFoundException: Drawable com.example.example_app:drawable/f_user_achievements_learning1h with resource ID #0x7f060073
Caused by: android.content.res.Resources$NotFoundException: File res/drawable/f_user_achievements_learning1h.xml from drawable resource ID #0x7f060073
at android.content.res.ResourcesImpl.loadDrawableForCookie(ResourcesImpl.java:725)
at android.content.res.ResourcesImpl.loadDrawable(ResourcesImpl.java:571)
at android.content.res.Resources.getDrawable(Resources.java:767)
at android.content.Context.getDrawable(Context.java:525)
at android.widget.ImageView.resolveUri(ImageView.java:840)
at android.widget.ImageView.onMeasure(ImageView.java:982)
at android.view.View.measure(View.java:19734)
at android.widget.TableRow.measureChildBeforeLayout(TableRow.java:222)
at android.widget.LinearLayout.measureHorizontal(LinearLayout.java:1117)
at android.widget.TableRow.onMeasure(TableRow.java:113)
at android.view.View.measure(View.java:19734)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120)
at android.widget.LinearLayout.forceUniformWidth(LinearLayout.java:1000)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:980)
at android.widget.TableLayout.measureVertical(TableLayout.java:473)
at android.widget.TableLayout.onMeasure(TableLayout.java:436)
at android.view.View.measure(View.java:19734)
at android.widget.ScrollView.measureChildWithMargins(ScrollView.java:1293)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at android.widget.ScrollView.onMeasure(ScrollView.java:340)
at android.view.View.measure(View.java:19734)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:911)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:640)
at android.view.View.measure(View.java:19734)
at android.widget.RelativeLayout.measureChild(RelativeLayout.java:676)
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:479)
at android.view.View.measure(View.java:19734)
at android.widget.RelativeLayout.measureChild(RelativeLayout.java:676)
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:479)
at android.view.View.measure(View.java:19734)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120)
at android.support.design.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:671)
at android.support.design.widget.HeaderScrollingViewBehavior.onMeasureChild(HeaderScrollingViewBehavior.java:90)
at android.support.design.widget.AppBarLayout$ScrollingViewBehavior.onMeasureChild(AppBarLayout.java:1319)
at android.support.design.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:736)
at android.view.View.measure(View.java:19734)
at android.support.v4.widget.DrawerLayout.onMeasure(DrawerLayout.java:1081)
at android.view.View.measure(View.java:19734)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:135)
at android.view.View.measure(View.java:19734)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:758)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:640)
at android.view.View.measure(View.java:19734)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at android.view.View.measure(View.java:19734)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:758)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:640)
at android.view.View.measure(View.java:19734)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
at com.android.internal.policy.DecorView.onMeasure(DecorView.java:687)
at android.view.View.measure(View.java:19734)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2271)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1358)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1607)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1246)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6301)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:871)
at android.view.Choreographer.doCallbacks(Choreographer.java:683)
at android.view.Choreographer.doFrame(Choreographer.java:619)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:857)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
Caused by: java.lang.IllegalArgumentException: Path string cannot be empty.
at android.util.PathParser.nCreatePathDataFromString(Native Method)
at android.util.PathParser.-wrap1(PathParser.java)
at android.util.PathParser$PathData.<init>(PathParser.java:74)
at android.graphics.drawable.VectorDrawable$VFullPath.updateStateFromTypedArray(VectorDrawable.java:1556)
at android.graphics.drawable.VectorDrawable$VFullPath.inflate(VectorDrawable.java:1507)
at android.graphics.drawable.VectorDrawable.inflateChildElements(VectorDrawable.java:693)
at android.graphics.drawable.VectorDrawable.inflate(VectorDrawable.java:598)
at android.graphics.drawable.DrawableInflater.inflateFromXml(DrawableInflater.java:130)
at android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:1227)
at android.graphics.drawable.Drawable.createFromXml(Drawable.java:1200)
at android.content.res.ResourcesImpl.loadDrawableForCookie(ResourcesImpl.java:715)
... 74 more
Dies ist das Fragment der Java-Klasse, wo ich ziehbar verlinken:
@Override
protected void setChoiceState() {
if(achievement.isAchieved()) {
image.setAlpha(ITEM_CHOSEN);
image.setImageResource(achievement.getResId());
} else {
image.setAlpha(ITEM_NOT_CHOSEN);
image.setImageResource(R.drawable.f_user_achievements_not_achieved);
}
}
Wo achievement.getResId()
Weg zu drawable ist. Ich habe auch versucht, es in rohen Pfad wie R.drawable.path_to_drawable
zu ändern, aber es hat auch nicht funktioniert. Die Zeile mit: image.setImageResource(R.drawable.f_user_achievements_not_achieved);
funktioniert jedoch ordnungsgemäß.
Hier sind meine .gradle Dateien:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
classpath 'com.google.gms:google-services:3.1.2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
und
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion '27.0.2'
defaultConfig {
applicationId "com.example.example_app"
vectorDrawables.useSupportLibrary = true
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
packagingOptions {
exclude 'META-INF/LICENSE'
exclude 'META-INF/DEPENDENCIES'
}
dexOptions {
jumboMode true
javaMaxHeapSize "2g"
}
}
repositories {
maven {
url "https://maven.google.com"
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile files('libs/gson-2.8.0.jar')
compile files('libs/commons-lang-2.3.jar')
compile files('libs/httpclient-4.5.3.jar')
compile 'org.apache.httpcomponents:httpcore:4.4.1'
compile 'com.readystatesoftware.sqliteasset:sqliteassethelper:+'
compile 'com.android.support:appcompat-v7:24.1.1'
compile 'com.android.support:design:24.1.1'
compile 'com.android.support:support-v4:24.1.1'
compile 'com.google.android.gms:play-services-ads:11.6.2'
compile 'com.google.android.gms:play-services-auth:11.6.2'
compile 'com.android.support:multidex:1.0.0'
testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'
Wenn Sie weitere Dateien benötigen, einfach einen Kommentar schreiben und ich werde sie
EDIT befestigen
Ich habe zwei zusätzliche Zeichen hinzugefügt (beide Vect oder Assets) - eine, die nicht funktioniert hat und die andere, mit der es keine Probleme gegeben hatte. Der erste funktioniert nicht, aber die Sekunden, die man richtig arbeitet, kann also ein Problem mit nur Xml-Datei sein, die Vektor zeichnbar darstellt?
Hier ist eine XML-Datei für einen nicht funktioniert Vektor Drawables:
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.000002"
android:viewportHeight="24.000002">
<path
android:pathData="M12,12m-11.803,0a11.803,11.803 0,1 1,23.605 0a11.803,11.803 0,1 1,-23.605 0"
android:strokeLineCap="round"
android:fillAlpha="1"
android:strokeColor="#ffffff"
android:fillColor="#1b1b1b"
android:strokeWidth="0.40124387"
android:strokeLineJoin="round"
android:strokeAlpha="1"/>
<path
android:pathData="m8.02,15.376 l0,-1.975c0,-0.821 1.742,-1.929 1.742,-1.929l0,-0.662c0,0 -1.742,-1.031 -1.742,-1.852l0,-1.975"
android:strokeLineCap="round"
android:strokeColor="#ffffff"
android:fillColor="#00000000"
android:strokeWidth="1.03580773"
android:strokeLineJoin="round"
android:strokeAlpha="1"/>
<path
android:pathData="m12.623,15.376 l0,-1.975c0,-0.821 -1.742,-1.929 -1.742,-1.929l0,-0.662c0,0 1.742,-1.031 1.742,-1.852l0,-1.975"
android:strokeLineCap="round"
android:strokeColor="#ffffff"
android:fillColor="#00000000"
android:strokeWidth="1.03580773"
android:strokeLineJoin="round"
android:strokeAlpha="1"/>
<path
android:pathData="M7.18,5.604L13.463,5.604A0.295,0.295 117.507,0 1,13.759 5.9L13.759,6.087A0.295,0.295 0,0 1,13.463 6.382L7.18,6.382A0.295,0.295 0,0 1,6.885 6.087L6.885,5.9A0.295,0.295 117.507,0 1,7.18 5.604z"
android:strokeLineCap="round"
android:fillAlpha="1"
android:strokeColor="#00000000"
android:fillColor="#ffffff"
android:strokeWidth="0.39954987"
android:strokeLineJoin="round"
android:strokeAlpha="1"/>
<path
android:pathData="M7.18,15.977L13.463,15.977A0.295,0.295 0,0 1,13.759 16.273L13.759,16.459A0.295,0.295 0,0 1,13.463 16.755L7.18,16.755A0.295,0.295 0,0 1,6.885 16.459L6.885,16.273A0.295,0.295 0,0 1,7.18 15.977z"
android:strokeLineCap="round"
android:fillAlpha="1"
android:strokeColor="#00000000"
android:fillColor="#ffffff"
android:strokeWidth="0.39954987"
android:strokeLineJoin="round"
android:strokeAlpha="1"/>
<path
android:pathData="m8.853,15.506 l2.937,0 -1.43,-0.988z"
android:strokeLineCap="round"
android:fillAlpha="1"
android:strokeColor="#ffb3cc"
android:fillColor="#ffb3cc"
android:strokeWidth="0.43446419"
android:strokeLineJoin="round"
android:strokeAlpha="1"/>
<path
android:pathData="m8.909,8.698 l2.804,0c0.314,0.066 -0.754,1.004 -1.399,1.366C9.655,9.709 8.665,8.784 8.909,8.698Z"
android:strokeLineCap="round"
android:fillAlpha="1"
android:strokeColor="#ffb3cc"
android:fillColor="#ffb3cc"
android:strokeWidth="0.40527168"
android:strokeLineJoin="round"
android:strokeAlpha="1"/>
<path
android:pathData="m-21.276,14.911c0.008,0.022 0.418,1.042 0.911,2.265 0.49,1.223 0.9,2.24 0.905,2.256 0.019,0.049 0.873,0.049 0.892,0.003 0.006,-0.019 0.416,-1.037 0.905,-2.259 0.492,-1.223 0.903,-2.243 0.911,-2.265 0.014,-0.033 -0.046,-0.038 -0.418,-0.033l-0.432,0.008 -0.7,1.701c-0.383,0.935 -0.703,1.701 -0.711,1.701 -0.008,0 -0.328,-0.766 -0.711,-1.701l-0.7,-1.701 -0.432,-0.008c-0.372,-0.006 -0.432,0 -0.418,0.033z"
android:fillAlpha="1"
android:strokeColor="#00000000"
android:fillColor="#ffffff"/>
<path
android:pathData=""
android:strokeLineCap="round"
android:fillAlpha="1"
android:strokeColor="#00000000"
android:fillColor="#ffb3cc"
android:strokeWidth="0.84933162"
android:strokeLineJoin="round"
android:strokeAlpha="1"/>
<path
android:pathData="M17.063,16.438m-2.344,0a2.344,2.344 0,1 1,4.689 0a2.344,2.344 0,1 1,-4.689 0"
android:strokeLineCap="round"
android:fillAlpha="1"
android:strokeColor="#ffffff"
android:fillColor="#00000000"
android:strokeWidth="0.43581513"
android:strokeLineJoin="round"
android:strokeAlpha="1"/>
<path
android:pathData="m16.973,16.438 l0,1.101 0.16,0 0.161,0 0.004,-0.492 0.004,-0.491 0.036,-0.078c0.072,-0.156 0.209,-0.238 0.395,-0.238 0.122,0 0.207,0.033 0.266,0.106 0.08,0.098 0.082,0.105 0.087,0.676l0.004,0.517 0.167,0 0.166,0 0,-0.525c0,-0.58 -0.006,-0.653 -0.073,-0.783 -0.181,-0.36 -0.752,-0.396 -0.997,-0.064l-0.056,0.075 0,-0.453 0,-0.453 -0.161,0 -0.161,0 0,1.101z"
android:fillAlpha="1"
android:strokeColor="#00000000"
android:fillColor="#ffb3cc"/>
<path
android:pathData="m15.704,15.553 l0,0.155 0.21,0 0.21,0 0,0.885 0,0.885 0.167,0 0.167,0 0,-1.039 0,-1.039 -0.377,0 -0.377,0 0,0.155z"
android:fillAlpha="1"
android:strokeColor="#00000000"
android:fillColor="#ffb3cc"/>
</vector>
Überprüfen Sie den Bildnamen zuerst. Auch gibt es einen Pfad kann nicht leer sein Fehler in Ihrem Protokoll. Überprüfen Sie diesen Pfad auch –
@VivekMishra Wie kann ich diesen Pfad überprüfen, weil ich keine Ahnung habe, was zu tun ist. Ich habe auch die Namen überprüft und sie sind korrekt – Lotos
Drucken Sie diesen Pfad in Protokollen und überprüfen Sie, ob Ihre Datei auf diesem Pfad vorhanden ist oder nicht –