Android slider库在包含到我的应用程序中时崩溃?
我正在尝试将其包含到我的代码中 当我将此添加到布局中时: 然后,在onCreate()中: 在initSlider()方法中: 而initSlider()中的setup*方法取自 但我的应用程序在onCreate()中的setcontentview崩溃,并显示以下错误消息: E/AndroidRuntime:致命异常:主进程:com.mysliderapp,PID: 22831 java.lang.RuntimeException:无法启动活动 ComponentInfo{com.mysliderapp/com.mysliderapp.MainActivity}: android.view.InflateException:二进制XML文件行#46:错误 充气级滑动层 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2205) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2255) 在android.app.ActivityThread.access$800(ActivityThread.java:142) android.app.ActivityThread$H.handleMessage(ActivityThread.java:1203) 位于android.os.Handler.dispatchMessage(Handler.java:102) Looper.loop(Looper.java:136)位于 android.app.ActivityThread.main(ActivityThread.java:5118)位于 java.lang.reflect.Method.Invokenactive(本机方法)位于 java.lang.reflect.Method.invoke(Method.java:515)位于 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:794) 位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:610) dalvik.system.NativeStart.main(本机方法) 原因:android.view.InflateException:二进制XML文件行#46: 在上对类滑动层进行膨胀时出错 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:707) 位于android.view.LayoutInflater.rInflate(LayoutInflater.java:755) 膨胀(LayoutInflater.java:492) 膨胀(LayoutInflater.java:397) 膨胀(LayoutInflater.java:353) com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:319) 位于android.app.Activity.setContentView(Activity.java:1973) com.mysliderapp.MainActivity.onCreate(MainActivity.java:99)位于 android.app.Activity.performCreate(Activity.java:5275)位于 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2169) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2255) 在android.app.ActivityThread.access$800(ActivityThread.java:142) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1203) 位于android.os.Handler.dispatchMessage(Handler.java:102) Looper.loop(Looper.java:136)位于 android.app.ActivityThread.main(ActivityThread.java:5118)位于 java.lang.reflect.Method.Invokenactive(本机方法)位于 java.lang.reflect.Method.invoke(Method.java:515)位于 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:794) 位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:610) dalvik.system.NativeStart.main(本机方法) 原因:java.lang.ClassNotFoundException:未找到类 路径:DexPathList[[zip文件]上的“android.view.SlidingLayer” “/data/app/com.mysliderapp-2.apk”],nativeLibraryDirectories=[/data/app-lib/com.mysliderapp-2, /供应商/lib,/system/lib]]at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:497) loadClass(ClassLoader.java:457)位于 createView(LayoutInflater.java:559)位于 onCreateView(LayoutInflater.java:652)位于 com.android.internal.policy.impl.PhoneLayoutFlater.onCreateView(PhoneLayoutFlater.java:66) 位于android.view.LayoutInflater.onCreateView(LayoutInflater.java:669) 在 createViewFromTag(LayoutInflater.java:694) 位于android.view.LayoutInflater.rInflate(LayoutInflater.java:755) 膨胀(LayoutInflater.java:492) 膨胀(LayoutInflater.java:397) 膨胀(LayoutInflater.java:353) com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:319) 位于android.app.Activity.setContentView(Activity.java:1973) com.mysliderapp.MainActivity.onCreate(MainActivity.java:99)位于 android.app.Activity.performCreate(Activity.java:5275)位于 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2169) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2255) 在android.app.ActivityThread.access$800(ActivityThread.java:142) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1203) 位于android.os.Handler.dispatchMessage(Handler.java:102) Looper.loop(Looper.java:136)位于 android.app.ActivityThread.main(ActivityThread.java:5118)位于 java.lang.reflect.Method.Invokenactive(本机方法)位于 java.lang.reflect.Method.invoke(Method.java:515)位于 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:794) 位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:610) dalvik.system.NativeStart.main(本机方法)Android slider库在包含到我的应用程序中时崩溃?,android,android-activity,Android,Android Activity,我正在尝试将其包含到我的代码中 当我将此添加到布局中时: 然后,在onCreate()中: 在initSlider()方法中: 而initSlider()中的setup*方法取自 但我的应用程序在onCreate()中的setcontentview崩溃,并显示以下错误消息: E/AndroidRuntime:致命异常:主进程:com.mysliderapp,PID: 22831 java.lang.RuntimeException:无法启动活动 ComponentInfo{com.myslide
将XML布局中的
SlidingLayer
更改为com.wunderlist.SlidingLayer.SlidingLayer
当使用外部组件时,AndroidStudio通常会遇到问题,而只按名称对组件进行膨胀,所以您需要给出完整的包名
<com.wunderlist.slidinglayer.SlidingLayer
android:id="@+id/slidingLayer1"
android:layout_width="match_parent"
android:layout_height="@dimen/layer_height"
android:elevation="2dip"
android:layout_above="@+id/linearLayout"
android:layout_alignParentStart="true">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/primary_light">
<WebView
android:id="@+id/authWebView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:gravity="center"
android:drawablePadding="15dip"
android:paddingBottom="80dp"
android:textSize="17sp"
android:textColor="@color/primary_text"/>
<Button
android:id="@+id/buttonClose"
style="@style/ButtonRed"
android:onClick="buttonClicked"
android:layout_marginBottom="60dp"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="@string/close_button_container"/>
</RelativeLayout>
</com.wunderlist.slidinglayer.SlidingLayer>
当然
private SlidingLayer mSlidingLayer;
setContentView(R.layout.activity_main);
initSlider();
private void initSlider() {
mSlidingLayer = (SlidingLayer) findViewById(R.id.slidingLayer1);
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
setupSlidingLayerPosition(prefs.getString("layer_location", "bottom"));
setupSlidingLayerTransform(prefs.getString("layer_transform", "none"));
setupShadow(prefs.getBoolean("layer_has_shadow", false));
setupLayerOffset(prefs.getBoolean("layer_has_offset", false));
setupPreviewMode(prefs.getBoolean("preview_mode_enabled", false));
}
<com.wunderlist.slidinglayer.SlidingLayer
android:id="@+id/slidingLayer1"
android:layout_width="match_parent"
android:layout_height="@dimen/layer_height"
android:elevation="2dip"
android:layout_above="@+id/linearLayout"
android:layout_alignParentStart="true">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/primary_light">
<WebView
android:id="@+id/authWebView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:gravity="center"
android:drawablePadding="15dip"
android:paddingBottom="80dp"
android:textSize="17sp"
android:textColor="@color/primary_text"/>
<Button
android:id="@+id/buttonClose"
style="@style/ButtonRed"
android:onClick="buttonClicked"
android:layout_marginBottom="60dp"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="@string/close_button_container"/>
</RelativeLayout>
</com.wunderlist.slidinglayer.SlidingLayer>
Caused by: java.lang.ClassNotFoundException: Didn't find class "android.view.SlidingLayer"
<com.wunderlist.slidinglayer.SlidingLayer
xmlns:slidingLayer="http://schemas.android.com/apk/res-auto"
android:id="@+id/slidingLayer1"
android:layout_width="@dimen/layer_width"
android:layout_height="@dimen/layer_height"
slidingLayer:shadowDrawable="@drawable/sidebar_shadow"
slidingLayer:shadowSize="@dimen/shadow_size"
slidingLayer:offsetDistance="@dimen/offset_distance"
slidingLayer:previewOffsetDistance="@dimen/preview_offset_distance"
slidingLayer:stickTo="top|bottom|right|left"
slidingLayer:changeStateOnTap="true">
…
…
</com.wunderlist.slidinglayer.SlidingLayer>