无法导入 "GestureDetectorCompat" class
Can't import "GestureDetectorCompat" class
我正在尝试将 GestureDetectorCompat.class
导入 Android Studio,但不起作用。
我尝试在 activity 的 class 定义上方添加 import androidx.core.view.GestureDetectorCompat;
和 import android.support.v4.view.GestureDetectorCompat;
,但它显示 Cannot resolve symbol 'GestureDetectorCompat'
错误。
将鼠标悬停在代码中的 GestureDetectorCompat
上,我得到了将库添加到 class 路径的选项,但单击它什么也没做,仍然无法解析符号。
我试图将它添加到 ExoPlayer 演示应用程序 PlayerActivity class。
private void initGesture()
{
GestureDetectorCompat mDetector = new GestureDetectorCompat(this, this);
}
build.gradle(模块:应用程序)
// Copyright (C) 2016 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
apply from: '../../constants.gradle'
apply plugin: 'com.android.application'
android {
compileSdkVersion project.ext.compileSdkVersion
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
versionName project.ext.releaseVersion
versionCode project.ext.releaseVersionCode
minSdkVersion 16
targetSdkVersion project.ext.targetSdkVersion
}
buildTypes {
release {
shrinkResources true
minifyEnabled true
proguardFiles = [
"proguard-rules.txt",
getDefaultProguardFile('proguard-android.txt')
]
}
debug {
jniDebuggable = true
}
}
lintOptions {
// The demo app does not have translations.
disable 'MissingTranslation'
}
flavorDimensions "extensions"
productFlavors {
noExtensions {
dimension "extensions"
}
withExtensions {
dimension "extensions"
}
}
}
dependencies {
implementation 'com.android.support:support-annotations:' + supportLibraryVersion
implementation project(modulePrefix + 'library-core')
implementation project(modulePrefix + 'library-dash')
implementation project(modulePrefix + 'library-hls')
implementation project(modulePrefix + 'library-smoothstreaming')
implementation project(modulePrefix + 'library-ui')
withExtensionsImplementation project(path: modulePrefix + 'extension-ffmpeg')
withExtensionsImplementation project(path: modulePrefix + 'extension-flac')
withExtensionsImplementation project(path: modulePrefix + 'extension-ima')
withExtensionsImplementation project(path: modulePrefix + 'extension-opus')
withExtensionsImplementation project(path: modulePrefix + 'extension-vp9')
withExtensionsImplementation project(path: modulePrefix + 'extension-rtmp')
}
apply plugin: 'com.google.android.gms.strict-version-matcher-plugin'
我希望添加 class 并正常工作,但只是出现了上述问题。
解决方法: GestureDetectorCompat属于com.android.support:support-compat
依赖。您必须将它添加到 gradle 文件中的依赖项中。
dependencies {
// Your dependencies here.
// ...
// Add this line.
implementation 'com.android.support:support-compat:28.0.0'
}
然后在代码中使用。
import android.support.v4.view.GestureDetectorCompat;
private void initGesture() {
GestureDetectorCompat mDetector = new GestureDetectorCompat(this, this);
}
我为遇到此问题的任何人添加以下答案:(前一个对我不起作用)
我不得不替换以下导入
import android.support.v4.view.GestureDetectorCompat;
有了这个:
import androidx.core.view.GestureDetectorCompat;
使用它。
我认为原因是 'android.support.v4' 中的一些子包已被弃用,我们应该使用 'androidx'
中的它们
新版本的 Android v4 包已从中删除了视图。所以要在上面的代码行中使用 GestureDetactorCompat
。
我正在尝试将 GestureDetectorCompat.class
导入 Android Studio,但不起作用。
我尝试在 activity 的 class 定义上方添加 import androidx.core.view.GestureDetectorCompat;
和 import android.support.v4.view.GestureDetectorCompat;
,但它显示 Cannot resolve symbol 'GestureDetectorCompat'
错误。
将鼠标悬停在代码中的 GestureDetectorCompat
上,我得到了将库添加到 class 路径的选项,但单击它什么也没做,仍然无法解析符号。
我试图将它添加到 ExoPlayer 演示应用程序 PlayerActivity class。
private void initGesture()
{
GestureDetectorCompat mDetector = new GestureDetectorCompat(this, this);
}
build.gradle(模块:应用程序)
// Copyright (C) 2016 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
apply from: '../../constants.gradle'
apply plugin: 'com.android.application'
android {
compileSdkVersion project.ext.compileSdkVersion
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
versionName project.ext.releaseVersion
versionCode project.ext.releaseVersionCode
minSdkVersion 16
targetSdkVersion project.ext.targetSdkVersion
}
buildTypes {
release {
shrinkResources true
minifyEnabled true
proguardFiles = [
"proguard-rules.txt",
getDefaultProguardFile('proguard-android.txt')
]
}
debug {
jniDebuggable = true
}
}
lintOptions {
// The demo app does not have translations.
disable 'MissingTranslation'
}
flavorDimensions "extensions"
productFlavors {
noExtensions {
dimension "extensions"
}
withExtensions {
dimension "extensions"
}
}
}
dependencies {
implementation 'com.android.support:support-annotations:' + supportLibraryVersion
implementation project(modulePrefix + 'library-core')
implementation project(modulePrefix + 'library-dash')
implementation project(modulePrefix + 'library-hls')
implementation project(modulePrefix + 'library-smoothstreaming')
implementation project(modulePrefix + 'library-ui')
withExtensionsImplementation project(path: modulePrefix + 'extension-ffmpeg')
withExtensionsImplementation project(path: modulePrefix + 'extension-flac')
withExtensionsImplementation project(path: modulePrefix + 'extension-ima')
withExtensionsImplementation project(path: modulePrefix + 'extension-opus')
withExtensionsImplementation project(path: modulePrefix + 'extension-vp9')
withExtensionsImplementation project(path: modulePrefix + 'extension-rtmp')
}
apply plugin: 'com.google.android.gms.strict-version-matcher-plugin'
我希望添加 class 并正常工作,但只是出现了上述问题。
解决方法: GestureDetectorCompat属于com.android.support:support-compat
依赖。您必须将它添加到 gradle 文件中的依赖项中。
dependencies {
// Your dependencies here.
// ...
// Add this line.
implementation 'com.android.support:support-compat:28.0.0'
}
然后在代码中使用。
import android.support.v4.view.GestureDetectorCompat;
private void initGesture() {
GestureDetectorCompat mDetector = new GestureDetectorCompat(this, this);
}
我为遇到此问题的任何人添加以下答案:(前一个对我不起作用)
我不得不替换以下导入
import android.support.v4.view.GestureDetectorCompat;
有了这个:
import androidx.core.view.GestureDetectorCompat;
使用它。
我认为原因是 'android.support.v4' 中的一些子包已被弃用,我们应该使用 'androidx'
中的它们新版本的 Android v4 包已从中删除了视图。所以要在上面的代码行中使用 GestureDetactorCompat
。