android.view.InflateException:二进制XML文件行#10

问题描述 投票:1回答:1

我正在尝试使用Yasic库创建粒子文本视图动画但是当我在物理设备上运行我的代码时,我得到了膨胀异常错误。我还没有弄清楚这个问题,如果你向我展示一些解决这个错误的方法,那将是一个很大的帮助。

这是我的java代码

Java的

public class MainActivity extends AppCompatActivity {


    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    @Override
    protected void onResume() {
        super.onResume();
        ParticleTextView particleTextView1 = (ParticleTextView) findViewById(R.id.particleTextView1);
        ParticleTextViewConfig config1 = new ParticleTextViewConfig.Builder()
                .setTargetText("Loading")
                .setReleasing(0.4)
                .setParticleRadius(4)
                .setMiniDistance(1)
                .setTextSize(150)
                .setRowStep(9)
                .setColumnStep(9)
                .instance();


            particleTextView1.setConfig(config1);
            particleTextView1.startAnimation();

  }
}

这里有Logcat错误

logcat的

09-18 22:31:52.809 7418-7418/com.codecrafted.udit.particle E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.codecrafted.udit.particle, PID: 7418
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.codecrafted.udit.particle/com.codecrafted.udit.particle.MainActivity}: android.view.InflateException: Binary XML file line #10: Binary XML file line #10: Error inflating class com.yasic.library.particletextview.View.ParticleTexView
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2747)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2808)
        at android.app.ActivityThread.-wrap12(ActivityThread.java)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1541)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:165)
        at android.app.ActivityThread.main(ActivityThread.java:6365)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:883)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
     Caused by: android.view.InflateException: Binary XML file line #10: Binary XML file line #10: Error inflating class com.yasic.library.particletextview.View.ParticleTexView
     Caused by: android.view.InflateException: Binary XML file line #10: Error inflating class com.yasic.library.particletextview.View.ParticleTexView
     Caused by: java.lang.ClassNotFoundException: Didn't find class "com.yasic.library.particletextview.View.ParticleTexView" on path: DexPathList[[zip file "/data/app/com.codecrafted.udit.particle-2/base.apk"],nativeLibraryDirectories=[/data/app/com.codecrafted.udit.particle-2/lib/arm64, /system/lib64, /vendor/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:380)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at android.view.LayoutInflater.createView(LayoutInflater.java:613)
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:812)
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:752)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:883)
        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:846)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:522)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:430)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:377)
        at android.support.v7.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:469)
        at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
        at com.codecrafted.udit.particle.MainActivity.onCreate(MainActivity.java:38)
        at android.app.Activity.performCreate(Activity.java:6852)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2700)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2808)
        at android.app.ActivityThread.-wrap12(ActivityThread.java)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1541)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:165)
        at android.app.ActivityThread.main(ActivityThread.java:6365)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:883)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
java android logcat android-library
1个回答
0
投票

首先在ParticleTextView方法中初始化onCreate()

private ParticleTextView particleTextView1
@Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        particleTextView1 = (ParticleTextView) findViewById(R.id.particleTextView1);
}

然后在你的xml中,确保它以:

<com.yasic.library.particletextview.View.ParticleTextView

我猜测在onResume()方法中初始化视图可能会导致此问题,因为它可能不会在onCreate()方法的第一个运行时创建。

© www.soinside.com 2019 - 2024. All rights reserved.