以下は私のxmlファイルです。プレビューでは、AppCompat ActionBarを不明なエラーでロードするのに失敗したエラーが2つあります。どのようにしてアプリを実行することができます。ただし、アプリがクラッシュし、Logcatにエラーが表示されません。
<?xml version="1.0" encoding="utf-8"?>
<Android.support.v4.widget.DrawerLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
xmlns:tools="http://schemas.Android.com/tools"
Android:id="@+id/drawer_layout"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:fitsSystemWindows="true"
tools:openDrawer="start">
<include
layout="@layout/app_bar_main"
Android:layout_width="match_parent"
Android:layout_height="506dp" />
<LinearLayout
Android:id="@+id/layout_main"
Android:orientation="vertical"
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:weightSum="1"
tools:context=".Activity.MainActivity">
<LinearLayout
Android:id="@+id/main_layout"
Android:orientation="vertical"
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:layout_weight="0.7"
tools:context=".Activity.MainActivity">
<!-- our tablayout to display tabs -->
<Android.support.design.widget.TabLayout
Android:id="@+id/tabLayout"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_marginTop="50dp"
app:tabMode="scrollable"
app:tabSelectedTextColor="@color/colorBlack"
app:tabTextColor="@color/colorWhite"
Android:background="@color/colorOran"
Android:minHeight="?attr/actionBarSize"
/>
<!-- View pager to swipe views -->
<Android.support.v4.view.ViewPager
Android:id="@+id/pager"
Android:layout_width="match_parent"
Android:layout_height="match_parent"/>
</LinearLayout>
<LinearLayout
Android:id="@+id/ll"
Android:layout_width="match_parent"
Android:layout_height="64dp"
Android:layout_alignParentBottom="true"
Android:background="#ffffff"
Android:orientation="horizontal"
Android:layout_weight="0.3"
Android:weightSum="4"
tools:layout_editor_absoluteX="8dp"
Android:layout_marginBottom="8dp"
Android:layout_alignParentLeft="true"
Android:layout_alignParentStart="true">
<ImageView
Android:id="@+id/btn_home"
Android:layout_width="wrap_content"
Android:layout_height="match_parent"
Android:layout_weight="1"
Android:src="@drawable/ta_home_icon"
Android:background="@color/colorOran"
Android:layout_marginRight="1dp"
Android:scaleType="fitCenter"/>
<ImageView
Android:id="@+id/btn_new"
Android:layout_width="wrap_content"
Android:layout_height="match_parent"
Android:layout_weight="1"
Android:src="@drawable/ta_todaydeals_icon"
Android:background="@color/colorOran"
Android:layout_marginRight="1dp"
Android:scaleType="fitCenter"/>
<ImageView
Android:id="@+id/btn_fav"
Android:layout_width="wrap_content"
Android:layout_height="match_parent"
Android:layout_weight="1"
Android:src="@drawable/ta_fav_icon"
Android:background="@color/colorOran"
Android:layout_marginRight="1dp"
Android:scaleType="fitCenter"/>
<ImageView
Android:id="@+id/btn_auth"
Android:layout_width="wrap_content"
Android:layout_height="match_parent"
Android:layout_weight="1"
Android:src="@drawable/ta_franchie_icon"
Android:background="@color/colorOran"
Android:scaleType="fitCenter"
Android:layout_marginRight="1dp"
/>
</LinearLayout>
</LinearLayout>
<Android.support.design.widget.NavigationView
Android:id="@+id/nav_view"
Android:layout_width="wrap_content"
Android:layout_height="match_parent"
Android:layout_gravity="start"
Android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer" />
</Android.support.v4.widget.DrawerLayout>
以下はappbar_mainです
<?xml version="1.0" encoding="utf-8"?>
<Android.support.design.widget.CoordinatorLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
tools:context="com.jeyashri.kitchen.jeyashriskitchen.Activity.MainActivity">
<Android.support.design.widget.AppBarLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:theme="@style/AppTheme.AppBarOverlay">
<Android.support.v7.widget.Toolbar
Android:id="@+id/toolbar"
Android:layout_width="match_parent"
Android:layout_height="?attr/actionBarSize"
Android:background="@color/colorOran"
app:popupTheme="@style/AppTheme.PopupOverlay">
<ImageView
Android:id="@+id/app_logo"
Android:layout_width="80dp"
Android:layout_height="match_parent"
Android:src="@drawable/img"/>
<ImageView
Android:id="@+id/btn_social"
Android:layout_width="75dp"
Android:layout_height="35dp"
Android:layout_marginRight="1dp"
Android:src="@drawable/share_icon" />
</Android.support.v7.widget.Toolbar>
</Android.support.design.widget.AppBarLayout>
<include layout="@layout/content_main" />
</Android.support.design.widget.CoordinatorLayout>
この問題の解決策は、使用しているAndroidサポートライブラリのバージョンによって異なります。
26.0.0-beta2
このAndroidサポートライブラリバージョンには、上記の問題を引き起こすバグがあります
Gradleビルドファイルで次のように使用します。
compile 'com.Android.support:appcompat-v7:26.0.0'
と:
buildToolsVersion '26.0.0'
そして
classpath 'com.Android.tools.build:gradle:3.0.0-alpha8'
すべてうまくいったはずです。
これらの新しいバージョンもまた同様の問題を抱えているようです。
res/values/styles.xml
でAppTheme
スタイルを次のように変更します。
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
に
<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
(追加されたBase.
に注意してください)
あるいは、問題が解決するまでライブラリをダウングレードします。
implementation 'com.Android.support:appcompat-v7:28.0.0-alpha1'
このサイトでそれを見つけた、それは私に働きます。 /res/values/styles.xmlを次の場所から変更します。
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
</style>
に:
<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
</style>
2018年6月異なるバージョンのappcompactを使うことで解決された問題。
Build.gradle(Module:app)でこの依存関係を追加してください
implementation 'com.Android.support:appcompat-v7:28.0.0-alpha1'
ハッピーコーディング... :)
/res/values/styles.xml
を探す
変化する
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
に
<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
テンプレートファイルを変更します(場所:Android-studio/plugins/Android/lib/templates/gradle-projects/NewAndroidModule/root/res/values/styles.xml.ftl
)
変化する
backwardsCompatibility!true>Theme.AppCompat<#else><#if
に
backwardsCompatibility!true>Base.Theme.AppCompat<#else><#if
私もこの問題を抱えていて、それは res/values/styles.xml から変更行として解決されました
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
に
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
両方の解決策がうまくいった
プレビューモードを開く
以下のリンクをたどって問題を解決してください。
修正 - レンダリングの問題次のクラスが見つかりませんでした:Android.support.v7.internal
goto appTheme ---->ホロのテーマを選択する---> refresh
implementation 'com.Android.support:appcompat-v7:28.0.0-beta01'
をに置き換えます。
implementation 'com.Android.support:appcompat-v7:28.0.0-alpha1'
build.gradle(モジュール:app)それはAndroid Studio 3.1.3の私の赤い印を直しました
android 3.0.0カナリア6では、すべての2.6.0 beta2をbeta1に変更する必要があります(appcompat、design、supportvector)
これを試して:
ただ変更してください:
compile 'com.Android.support:appcompat-v7:26.0.0-beta2'
に:
compile 'com.Android.support:appcompat-v7:26.0.0-beta1'
これは私のために働きます
次のコードを変更してください。
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
あり
<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
これを使う:
implementation 'com.Android.support:appcompat-v7:26.0.0-beta1'
implementation 'com.Android.support:design:26.0.0-beta1'
の代わりに
implementation 'com.Android.support:appcompat-v7:26.0.0-beta2'
implementation 'com.Android.support:design:26.0.0-beta2'
私の場合、それはレンダリングの問題を取り除きました。
これが問題を解決するための最小構成です。
つかいます:
dependencies {
...
implementation 'com.Android.support:appcompat-v7:26.1.0'
...
}
と:
compileSdkVersion 26
buildToolsVersion "26.0.1"
そしてproyectのルートの中にあるbuild.gradleファイルに:
buildscript {
...
....
dependencies {
classpath 'com.Android.tools.build:gradle:3.0.1'
...
...
}
}
Android Studio 3.1.3でも同じ問題に直面しました
style.xml fileに進むだけです。
テーマ名を置き換えます
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
と
<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
それからプロジェクトをcleanそしてrebuildしてください。
私も同じ問題に直面していました。レイアウトのプレビューウィンドウからテーマを変更するようなことは何も助けにはなりませんでした。
これがstyles.xml
のApptheme
に追加された理由
dependencies {
implementation 'com.Android.support:appcompat-v7:27.0.2'
implementation 'com.Android.support:design:27.0.2'
}
それでもそれは私にエラーを与えていました:「シンボルウィジェットを解決することができません...コーディネーターレイアウト」それから私は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
私はimplementation 'com.Android.support:appcompat-v7:28.0.0-alpha3'
でもこの問題を抱えていました。
私にとっての解決策は、File
- > Invalidate Caches / Restart
- > Invalidate
- > Close Project
- >プロジェクトウィンドウからプロジェクトを削除 - > Open Project
(プロジェクトウィンドウから)と移動することでした。