当我尝试在试用Android 5.0 Lollipop时在测试项目中使用RecyclerView时,我在Googles网站上看到以下内容:
1)让我感到困惑的是,他们使用支持的东西而不是"真实的"在API 21中提供的东西。我希望不使用support-package,因为我在设备上运行5.0,已经下载并安装了SDK 21。为什么我不能直接使用RecyclerView,而不使用支持......?
2)无法找到课程 在Android Studio中,我收到此错误:
"此处不允许使用Element RecyclerView"没有进一步的信息另外,如果我使用上面发布的示例,我会得到同样的错误:
如果我点击"修复构建路径",我看到:
我总是在使用JAVA和Android时遇到这些问题,但错误信息不清楚。 sdk的路径是正确的(在SDK位置下)。
这是我的傻瓜:
apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion "19.1.0"
defaultConfig {
applicationId "se.snapcode.lollipoptest"
minSdkVersion 21
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
这是我的清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="se.snapcode.lollipoptest" >
<uses-sdk android:minSdkVersion="21"
android:targetSdkVersion="21" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
答案 0 :(得分:1)
由于我完全破坏了我的第一个答案,让我们从顶部再试一次......
让我感到困惑的是,他们使用支持的东西而不是API 21中提供的“真实”东西。
没有“真实”的东西。 RecyclerView
仅在Android支持包中,通过recyclerview-v7
库项目/ AAR。
这与谷歌如何打包ViewPager
(support-v4
和support-v13
),CardView
(cardview-v7
),Android电视的Leanback用户界面({{ {1}})等。
Android支持库不仅仅是一组反向移植。它确实包括只能通过这些库提供的各种类。除上述内容外,还有leanback-v17
,NavUtils
以及Android支持库“原生”的各种其他类。
因此,如果您需要FileProvider
,请在项目中添加RecyclerView
,例如通过Android Studio:
或通过您的recyclerview-v7
模块的app
:
build.gradle