私は最新のビルドツール(27)と同様のAPIレベルと共に、最新バージョンのAndroid studio(3.0)を使っています。
レイアウトが[デザイン]タブに表示されず、コーディネーターレイアウトを使用していると特に問題が発生します。
どうすればこの問題を回避できますか?
このレンダリングの問題は、アプリケーションのテーマにこの行を挿入するだけで解決されました(通常、アプリケーションのテーマは styles.xml に配置されています)。
[ SDK 28 ]
<style name="AppTheme">
<item name="coordinatorLayoutStyle">@style/Widget.Support.CoordinatorLayout</item>
</style>
[ SDK 27 ]
<style name="AppTheme">
<item name="coordinatorLayoutStyle">@style/Widget.Design.CoordinatorLayout</item>
</style>
@Chrisによって示唆されたように。 IDEが Widget.Support または Widget.Design に CoordinatorLayout が見つからない場合は、「CoordinatorLayout」と入力してくださいいくつかの選択肢を教えてください。
新しい SDK 28 が判明したため、残念ながら新しいプロジェクトを作成するとAndroid Studioでこのエラーが発生します。
の解き方:
build.gradle
(Module:app) ファイルを確認して、次のように変更してください。
compileSdkVersion 28
targetSdkVersion 28
に:
compileSdkVersion 27
targetSdkVersion 27
また、正しい依存関係バージョンを使用していることを確認してください。
implementation 'com.Android.support:appcompat-v7:27.1.1'
implementation 'com.Android.support:design:27.1.1'
implementation 'com.Android.support:appcompat-v7:28.0.0-alpha3'
(モジュール)のbuild.gradle
は、アルファ3をアルファ1に変更します。同期すると、うまくいくはずです。私はこれを理解しようと試みるのにほぼ一日を費やした。これらの答えのどれも私のために働きませんでした。お役に立てれば
私も同じ問題に直面していました。レイアウトのプレビューウィンドウからテーマを変更するようなことは何も助けになりませんでした。
解決策: build.gradle(app)
を次のように更新した。
dependencies {
implementation 'com.Android.support:appcompat-v7:27.0.2'
implementation 'com.Android.support:design:27.0.2'
}
もう一つ:
compileSdkVersion 27
targetSdkVersion 27
Android Studio 3.1.4ユーザーの場合:マークされた答えを試してみましたが、うまくいきませんでした。この行を挿入する:
<style name="AppTheme.NoActionBar">
<item name="coordinatorLayoutStyle">@style/Widget.Design.CoordinatorLayout</item>
</style>
アプリケーションのテーマにしてもレンダリングの問題は解決されないので、その変更は元に戻しました。
解決策: / build.gradle(Module:app)ファイルでこの変更を行いました。
変更前:
Android {
compileSdkVersion 28
defaultConfig {
targetSdkVersion 28
}
}
}
dependencies {
implementation 'com.Android.support:appcompat-v7:28.0.0-rc01'
implementation 'com.Android.support:design:28.0.0-rc01'
}
変更後:
Android {
compileSdkVersion 27
defaultConfig {
targetSdkVersion 27
}
}
}
dependencies {
implementation 'com.Android.support:appcompat-v7:27.1.1'
implementation 'com.Android.support:design:27.1.1'
}
それは私にとって完璧に機能しました。それが役に立つことを願っています。
<style name="Theme.Shrine" parent="Theme.MaterialComponents.Light.NoActionBar">
<item name="coordinatorLayoutStyle">@style/Widget.Support.CoordinatorLayout</item>
</style>
あなたの材料のテーマを追加してください。
回答のおかげで、私はコードに問題があることがわかりました。
フラグメントの親レイアウトでtools:showIn
属性を有効にしていました。これをビューページャに移動しました。以前はHostアクティビティに埋め込まれていましたが、lintはそれをキャッチしませんでした。これは少し驚くべきことです。
私はそれがAndroid Studio 3.0以降で共通の問題であると思います、うまくいけば彼らはそれが次のアップデートでそれを修正するでしょう。 Android Studio Preview 3.2では、それはうまく働きます。 Android Studio Previewをダウンロード
私のAndroidスタジオバージョン3.1.3。
ALL SDKバージョン28のアンインストールを行いました。
ステップは、Open SDKマネージャー> SDKプラットフォーム>パッケージの詳細の表示> Untick SDK 28>新規プロジェクトの適用および作成です。
私は同じ問題を抱えているが、アンドロイドスタジオ3.1.4に
そのため、最初はbuild.gradleで次のことを行いました。
これを交換してください:
実装 'com.Android.support:appcompat-v7:28.0.0-rc01'
実装 'com.Android.support:design:28.0.0-rc01'
実装 'com.Android.support:support-v4:28.0.0-rc01'
それと:
実装 'com.Android.support:appcompat-v7:28.0.0-alpha1'
実装 'com.Android.support:design:28.0.0-alpha1'
実装 'com.Android.support:support-v4:28.0.0-alpha1'
しかし、どういうわけかプロジェクトの再構築後、問題は再び繰り返されます。
だから、私はこのようにしてきました:
これが私のプロジェクトgradle.buildです。
buildscript {
ext.kotlin_version = '1.2.41'
ext.Android_support = '27.1.1'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.1.4'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
maven { url "https://jitpack.io" }
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
そしてここでアプリbuild.gradle
apply plugin: 'com.Android.application'
apply plugin: 'kotlin-Android'
apply plugin: 'kotlin-Android-extensions'
apply plugin: 'kotlin-kapt'
Android {
compileSdkVersion 27
defaultConfig {
applicationId "*****.******"//Replace with your own ID
minSdkVersion 16
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'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'com.Android.support:appcompat-v7:27.1.1'
implementation 'com.Android.support:design:27.1.1'
implementation 'com.Android.support:support-v4:27.1.1'
implementation 'com.Android.support.constraint:constraint-layout:1.1.0'
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'
}
そしてこれは私の問題を解決する
ありがとうございました
余談ですが、Android Studioのデザインビューで、styles.xmlファイルに次のように追加したとします。
<style name="Coordinator">
<item
name="coordinatorLayoutStyle">@style/Widget.Design.CoordinatorLayout</item>
</style>
そして、レイアウトのxmlリソースファイルのCoordinatorLayoutに以下を追加します。
<Android.support.design.widget.CoordinatorLayout
Android:theme="@style/Coordinator"
Android:orientation="vertical"
Android:id="@+id/sample_layout_id"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:background="@drawable/sample_background"
tools:theme="@style/Coordinator">
その後、少なくとも、デザインビューでmissing CoordinatorLayoutStyleエラーの生成が停止されます。
回答を投稿します。他の回答は機能する場合がありますが、プレビューバージョンをダウンロードする必要はありません。アクションバーなしでマテリアルデザインを行うことは、START Android Studio
Android Studioのバージョンは3.1.4です。デフォルトのAPIは28です。FIXは、API 26にダウングレードすることです。これを行うには、[ファイル]-> [プロジェクト構造]をクリックし、 appProperties TABで、Compile Sdk versionをAPI 26に変更します。FlavorsTABをクリックして、Target Sdk versionを26に変更します
次にbuild.gradle(module:app)でこれらの変更を追加します
implementation 'com.Android.support:appcompat-v7:27.0.0'
implementation 'com.Android.support:recyclerview-v7:27.1.1'
implementation 'com.Android.support:cardview-v7:27.1.1'
ツールバーの使用方法を学ぶために、Googleによるこの遅いFIXをいつでも正当化できると思います
これはおそらく既存の問題です: https://issuetracker.google.com/issues/37048767
他のバージョンのAndroidを使用してレンダリングします(Android API 22など)。
または、タイプミスや無効なXMLエントリがないかどうかを確認してください。
ここを参照してください: スタイルがありません。このレイアウトに正しいテーマが選択されていますか?
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="coordinatorLayoutStyle">@style/Widget.Design.CoordinatorLayout</item>
</style>
style.xmlの項目としてcoodrinatorLayoutStyleを追加するだけでうまくいきました。
ただ実装 'com.Android.support:appcompat-v7:28.0.0-alpha3'と 'com.Android.support:design:28.0.0-alpha3'をalpha 1に変更してください。それで私は問題を解決しました。
IDE内のすべてのSDKツールをアップデートし、Android Studioを3.2.1にアップデートすると、この問題は解決します
それは私のために働いてそれを試してみてください
compileSdkVersion 28
defaultConfig {
minSdkVersion 16
targetSdkVersion 28
}
implementation 'com.Android.support:appcompat-v7:28.0.0'
implementation 'com.Android.support:design:28.0.0'
これはsdk 28号です
Build.gradle(Module:app)ファイルを確認して、次のように変更します。
compileSdkVersion 28
targetSdkVersion 28
に:
compileSdkVersion 27
targetSdkVersion 27