0

我通过导入项目并添加依赖项然后编辑 XML 文件,将标准 viewpager 替换为 JazzyView 寻呼机 ( https://github.com/jfeinstein10/JazzyViewPager ):

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <com.jfeinstein.jazzyviewpager.JazzyViewPager
        android:id="@+id/pager"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    </com.jfeinstein.jazzyviewpager.JazzyViewPager>

</LinearLayout> 

但我收到一个错误:

找不到以下类: - com.jfeinstein.jazzyviewpager.JazzyViewPager

当我删除项目并将 jar 添加到构建路径时,我收到此错误:

无法实例化以下类: - com.jfeinstein.jazzyviewpager.JazzyViewPager

java.lang.ClassNotFoundException:com.jfeinstein.jazzyviewpager.R$styleable 在 java.net.URLClassLoader$1.run(在 java.net.URLClassLoader$1.run(在 java.security.AccessController.doPrivileged(在 java.net.URLClassLoader .findClass(在 java.lang.ClassLoader.loadClass(在 java.lang.ClassLoader.loadClass(在 com.jfeinstein.jazzyviewpager.JazzyViewPager.(JazzyViewPager.java:67)在 sun.reflect.NativeConstructorAccessorImpl.newInstance0(在 sun.reflect .NativeConstructorAccessorImpl.newInstance(在 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(在 java.lang.reflect.Constructor.newInstance(在 com.android.ide.eclipse.adt.internal.editors.layout.ProjectCallback.instantiateClass(ProjectCallback.java: 422)在 com.android.ide.eclipse.adt.internal.editors.layout.ProjectCallback。loadView(ProjectCallback.java:179) 在 android.view.BridgeInflater.loadCustomView(BridgeInflater.java:207) 在 android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:135) 在 android.view.LayoutInflater.rInflate_Original(LayoutInflater.java :746) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:489) 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:718) 在 android.view.LayoutInflater.inflate(LayoutInflater_Delegate.java:64) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:489) .view.LayoutInflater.inflate(LayoutInflater.java:372)LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64) at android.view.LayoutInflater.rInflate(LayoutInflater.java:718) at android.view.LayoutInflater.inflate(LayoutInflater.java:489) at android.view.LayoutInflater.inflate(LayoutInflater .java:372)LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64) at android.view.LayoutInflater.rInflate(LayoutInflater.java:718) at android.view.LayoutInflater.inflate(LayoutInflater.java:489) at android.view.LayoutInflater.inflate(LayoutInflater .java:372)

我知道如何添加库依赖项,所以我不认为我在那里做错了什么。

4

3 回答 3

2

您是如何添加项目引用的?您是否转到属性-> Android-> 库-> 添加?这与属性 -> Java 构建路径 -> 项目 -> 添加不同。你应该使用第一种方式。

第二个问题是正常的,因为 JazzyView 是一个 Android 库,当你将它导出为 jar 时,资源会丢失。你永远不能那样做。

于 2013-08-27T14:50:03.003 回答
0

根据链接android dependenciesR该类不再打包在库项目的 jar 输出中。另请参阅将 android 库添加为项目的依赖项的相同链接。

于 2013-08-27T14:50:45.117 回答
0

您必须需要查看您setContentView(R.layout.buttonslideshowlayout)放置控件 xml 名称的设置内容

<com.jfeinstein.jazzyviewpager..JazzyViewPager xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/jazzy_pager"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/h1" />

在这里更改com.jfeinstein.jazzyviewpager您的项目名称并完成我也为我自己的项目问题做了这个

于 2013-12-20T04:49:53.423 回答