Can't find android.support.design.widget.Snackbar in support design library
AndroidAndroid Support-LibraryAndroid Problem Overview
I develop own library module where I use Snackbar
.
Here is my Gradle file:
apply plugin: 'com.android.library'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
minSdkVersion 14
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'me.zhanghai.android.materialprogressbar:library:1.1.4'
compile 'com.android.support:design:23.1.1'
}
As you can see, I have added import com.android.support:design:23.1.1
, but as result I get error:
> error: package android.support.design.R does not exist
How can I solve this problem?
Android Solutions
Solution 1 - Android
You must add the design dependency in your gradle file (module app) according to
AndroidX build artifact
implementation "com.google.android.material:material:1.1.0-alpha06"
Old build artifact
implementation "com.android.support:design:28.0.0"
If you are using Support libraries, you can visit Support Library Packages | Android Developers, for the latest Design Support Library version. If you're new to AndroidX and want to use it, you can find more information about migrating to the new dependencies here.
Source: http://android-developers.blogspot.co.il/2015/05/android-design-support-library.html
(Scroll all the way down)
Solution 2 - Android
I solved the problem now :)
-
Open [File] -> [Project Structure...]
-
Select [app] in the left pad
-
Select [Dependencies] in the right tabs
-
Click [+] button on the right side
-
Select [1 Library dependency]
-
Choose [com.android.support:design ~~]
-
Click [OK] button and so on
Result:
------ edit -----------------------------------
You can also add this External library in build.gradle(Module:app)
press Alt+Enter in build.gradle(Module:app)
-> add library dependency
-> choose what you need
and press "Sync Now" positioned up right corner
Solution 3 - Android
To get the the Snackbar into our Android proyect just add the reference of support:design library inside the build.gradle
file :
dependencies {
...
...
compile 'com.android.support:design:25.0.1'
}
Be sure to sync your project with the gradle files , this will fix your problem.
Your error message is:
> error: package android.support.design.R does not exist
be sure to have the correct import:
import android.support.design.widget.Snackbar;
Solution 4 - Android
If you are migrating to androidx then use
com.google.android.material.R.id.snackbar_text
instead of
android.support.design.R.id.snackbar_text
Don't miss to import import com.google.android.material.snackbar.Snackbar;
Also implement implementation "com.google.android.material:material:1.2.0-alpha02"
Solution 5 - Android
implementation 'com.android.support:design:28.0.0'
implementation 'com.android.support:support-annotations:28.0.0'
set it in gradle.(module app) its working for me in android studio and device with orio.
Solution 6 - Android
After upgrading to androidx it will show error.You have to import this library
import com.google.android.material.snackbar.Snackbar;
Snackbar snackbar = Snackbar.make(view, R.string.Mapview, Snackbar.LENGTH_INDEFINITE);
View snackbarView = snackbar.getView();
TextView textView = (TextView) snackbarView.findViewById(com.google.android.material.R.id.snackbar_text);
textView.setMaxLines(5);
snackbar.show();
Hope it will solve your problem.
Solution 7 - Android
Try this
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:22.2.0'
compile 'me.zhanghai.android.materialprogressbar:library:1.1.4'
compile 'com.android.support:design:22.2.1'
}
Solution 8 - Android
Dependencies may change with upgrading of android sdk versions, i am creating application in sdkversion 27. I have added the following dependency for snackbar.
implementation 'com.android.support:design:27.1.1'
Solution 9 - Android
Just type fully qualified class name android.support.design.widget.SnackBar instead of just SnackBar at every occurrence . It solves the issue for me.
Solution 10 - Android
Remove Support v4 from your project and then add support design library.
Solution 11 - Android
Use implementation "com.android.support:design:23.0.0"
or Change the Sdk to 28 and use implementation "com.android.support:design:28.0.0"