私はAndroid Studioを初めて使用し、 https://developer.Android.com/training/appbarで説明されているようにツールバーが表示されない理由がわかりません/ setting-up stackoverflowでの私のような質問が既にいくつかあることは知っていますが、それらは私のプロジェクトでは動作しません。したがって、私はこの問題を解決するために非常に感謝しています。スクリーンショット:
Java.lang.ClassNotFoundException: Android.view.View$OnUnhandledKeyEventListener
at org.jetbrains.Android.uipreview.ModuleClassLoader.load(ModuleClassLoader.Java:180)
at com.Android.tools.idea.rendering.RenderClassLoader.findClass(RenderClassLoader.Java:61)
at org.jetbrains.Android.uipreview.ModuleClassLoader.findClass(ModuleClassLoader.Java:118)
at Java.lang.ClassLoader.loadClass(ClassLoader.Java:424)
at Java.lang.ClassLoader.loadClass(ClassLoader.Java:357)
at org.jetbrains.Android.uipreview.ModuleClassLoader.loadClass(ModuleClassLoader.Java:213)
at Android.support.v7.widget.ViewUtils.isLayoutRtl(ViewUtils.Java:58)
at Android.support.v7.widget.Toolbar.onMeasure_Original(Toolbar.Java:1578)
at Android.support.v7.widget.Toolbar.onMeasure(Toolbar.Java)
at Android.view.View.measure_Original(View.Java:22071)
at Android.view.View_Delegate.measure(View_Delegate.Java:80)
at Android.view.View.measure(View.Java:22035)
at Android.view.ViewGroup.measureChildWithMargins(ViewGroup.Java:6602)
at Android.widget.FrameLayout.onMeasure(FrameLayout.Java:185)
at Android.view.View.measure_Original(View.Java:22071)
at Android.view.View_Delegate.measure(View_Delegate.Java:80)
at Android.view.View.measure(View.Java:22035)
at Android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.Java:715)
at Android.widget.RelativeLayout.onMeasure(RelativeLayout.Java:461)
at Android.view.View.measure_Original(View.Java:22071)
at Android.view.View_Delegate.measure(View_Delegate.Java:80)
at Android.view.View.measure(View.Java:22035)
at com.Android.layoutlib.bridge.impl.RenderSessionImpl.measureView(RenderSessionImpl.Java:590)
at com.Android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.Java:343)
at com.Android.layoutlib.bridge.Bridge.createSession(Bridge.Java:384)
at com.Android.tools.idea.layoutlib.LayoutLibrary.createSession(LayoutLibrary.Java:193)
at com.Android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.Java:544)
at com.Android.tools.idea.rendering.RenderTask.lambda$inflate$3(RenderTask.Java:678)
at Java.util.concurrent.FutureTask.run(FutureTask.Java:266)
at Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1142)
at Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:617)
at Java.lang.Thread.run(Thread.Java:745)
<?xml version="1.0" encoding="utf-8"?>
<Android.support.v7.widget.Toolbar xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:background="@color/colorPrimaryDark">
</Android.support.v7.widget.Toolbar>
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 28
defaultConfig {
applicationId "com.example.david.gamebase"
minSdkVersion 21
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.Android.support:appcompat-v7:28.0.0-rc01'
implementation 'com.Android.support.constraint:constraint-layout:1.1.2'
implementation 'com.google.firebase:firebase-auth:11.6.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'
}
apply plugin: 'com.google.gms.google-services'
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Base.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>
</style>
</resources>
## toolbar.xml ##
<?xml version="1.0" encoding="utf-8"?>
<Android.support.v7.widget.Toolbar xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:background="@color/colorPrimaryDark">
</Android.support.v7.widget.Toolbar>
build.gradle(アプリレベル)で変更を行い、以下のようにバージョン27にダウングレードします。次に、プロジェクトを同期してビルドします。問題が解決することを願っています。
compileSdkVersion 27
targetSdkVersion 27
implementation 'com.Android.support:appcompat-v7:27.1.1'
documentation で述べたように、まず、Activity
をAppCompatActivity()
から拡張する必要があります。
次に、プロジェクトでstyles
、Base.Theme.AppCompat.Light.DarkActionBar
が設定されています。つまり、DarkActionBar
がありますが、Toolbar
には既にlayout
があります。そのため、単に変更します。
Base.Theme.AppCompat.Light.DarkActionBar
に:
Theme.AppCompat.Light.NoActionBar
次に、(Java-kotlin側)、Toolbar
をセットアップします。
// Note that the Toolbar defined in the layout has the id "my_toolbar"
setSupportActionBar(findViewById(R.id.my_toolbar))
そして、Toolbar
にIDを与えます。
<Android.support.v7.widget.Toolbar
Android:id="@+id/my_toolbar"
Android:layout_width="match_parent"
Android:layout_height="?attr/actionBarSize"
Android:background="?attr/colorPrimary"
Android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
その後、あなたは行ってもいいはずです。
これはエラーではありませんが、mybuild.gradle(アプリレベル)で次のコードを追加することで無視できます。場合。次に、プロジェクトを同期してビルドします。うまくいけば、問題が修正されます。
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == "com.Android.support") {
if (!requested.name.startsWith("multidex")) {
details.useVersion "26.+"
}
}
}
}
Android.view.View $ OnUnhandledKeyEventListenerはapi28に追加されます。
ランタイムデバイスが28未満の場合、クラスは見つかりませんが、致命的なエラーなしで実行されます。
エラーメッセージを無視するために、デバッグモードでクラスを挿入できます。
implementation 'com.Android.support:appcompat-v7:28.0.0'
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
//inject class when api<28 && debug==true
debugImplementation 'com.github.DonaldDu:FixUnhandledEvent:1.0'
依存関係にmultidexサポートライブラリを追加します
com.Android.support:multidex:1.0.3
ライブラリ〜-v7:28.0.0に問題があります。 2つのソリューションがあり、compileとtargetSdkVersionを27にダウンロードするか、Android Studioを最新バージョン(3.2.x以上)にアップグレードできます。