Je reçois cette erreur:
Impossible de résoudre le symbole '@ style/Widget.MaterialComponents.TextInputLayout.OutlineBox'
Je reçois cette erreur après avoir ajouté cette ligne à TextInputLayout dans mon XML:
style="@style/Widget.MaterialComponents.TextInputLayout.OutlineBox"
Ceci est mon code XML complet (supprimé les contraintes/marges non pertinentes):
<Android.support.design.widget.TextInputLayout
Android:id="@+id/textInputLayout2"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlineBox"
Android:layout_width="match_parent"
Android:layout_height="0dp"
app:counterEnabled="true"
app:counterMaxLength="300">
<Android.support.design.widget.TextInputEditText
Android:id="@+id/cheese_description"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:gravity="start"
Android:hint="@string/cheese_description" />
</Android.support.design.widget.TextInputLayout>
c'est mon application build.gradle:
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 27
defaultConfig {
applicationId "app.cheese.cheese.some.sample_cheese"
minSdkVersion 19
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
buildToolsVersion '27.0.3'
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.Android.support.constraint:constraint-layout:1.0.2'
compile 'com.google.firebase:firebase-auth:11.8.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.Android.support.test:runner:1.0.1'
androidTestImplementation 'com.Android.support.test.espresso:espresso-core:3.0.1'
compile 'com.Android.support:design:27.0.2'
compile 'com.google.firebase:firebase-core:11.8.0'
implementation 'com.Android.support:appcompat-v7:27.0.2'
compile 'com.Android.support:support-v4:27.0.2'
compile 'com.google.firebase:firebase-storage:11.8.0'
compile 'com.google.firebase:firebase-messaging:11.8.0'
compile 'com.firebaseui:firebase-ui-auth:3.1.3'
compile 'com.google.firebase:firebase-database:11.8.0'
implementation 'com.Android.support:cardview-v7:27.0.2'
implementation 'com.Android.support:recyclerview-v7:27.0.2'
implementation 'com.firebaseui:firebase-ui-database:3.2.1'
}
apply plugin: 'com.google.gms.google-services'
et voici mon autre build.gradle:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.0.1'
classpath 'com.google.gms:google-services:3.1.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
maven {
url "https://maven.google.com"
}
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
J'ai essayé:
J'ai pris la ligne de code XML qui provoque une erreur à partir des composants material.io ici . est-ce que quelqu'un sait ce que je fais mal?
Je vous remercie :)
Les Material Components n'ont pas encore fourni les nouvelles versions sous la dépendance com.Android.support:design
(ou via toute autre dépendance officielle que vous pouvez inclure dans votre fichier build.gradle
), de sorte que ce que vous voyez dans 27.0.2
ne contient aucun des fichiers modifications - telles que la prise en charge de Widget.MaterialComponents.TextInputLayout.OutlineBox
.
Vous devrez copier les parties de la bibliothèque de composants de matériau de votre choix directement dans votre projet si vous souhaitez accéder aux dernières modifications.
Les deux réponses sont correctes, mais j'ai trouvé une erreur dans le code donné par codelabs sur ce lien https://codelabs.developers.google.com/codelabs/mdc-111-kotlin/#2 La OutlineBox est mal orthographié le bon code est
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
Ce style fait partie de la version alpha de la bibliothèque d’aide au design et n’est pas encore disponible avant la version Android p. Pour utiliser cette modification, compileSdkVersion en 'Android-P' et utiliser cette dépendance pour l'utiliser
implementation 'com.Android.support:design:28.0.0-alpha1'
Si vous utilisez un nouvel emballage pour les bibliothèques de support, vous devez utiliser:
com.google.Android.material:material:1.0.0-beta01
dépendance pour cela
Je reçois le même problème que j'ai résolu en utilisant ci-dessous dependencies
Utiliser ci-dessous dependencies
implementation 'com.Android.support:appcompat-v7:28.0.0-alpha3'
implementation 'com.Android.support:design:28.0.0-alpha3
ajouter ci-dessous la dépendance a résolu mon problème
implementation 'com.Android.support:design:28.0.0'
mes dépendances complètes est
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.Android.support:appcompat-v7:28.0.0'
implementation 'com.Android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.Android.support.test:runner:1.0.2'
androidTestImplementation 'com.Android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.Android.support:design:28.0.0'
}