2017-02-24 58 views
0

我正在使用android studio 2.2.3。我所有的佈局xmls都在抱怨「Missing styles」。以下是我在打開設計視圖時遇到的錯誤。在android中缺少樣式

呈現問題缺少樣式。是否爲此佈局選擇了正確的主題?使用佈局上方的主題組合框來選擇不同的佈局,或修復主題樣式引用。無法在當前主題中找到樣式'progressBarStyle'(1568個類似錯誤未顯示)未能在當前主題中找到'?attr/textAppearanceSmall'。 (65類似錯誤未顯示)

我也注意到styles.xml無法找到「Theme.AppCompat.Light.NoActionBar」。我檢查了項目結構,並且能夠看到依賴列表中的com.android.support.appcompat-v7:25.2.0。我執行無效緩存並重新啓動,清理/構建。但我無法擺脫缺少的樣式問題。我也嘗試將我的「AppTheme」重命名爲「AppBaseTheme」,並在我的Android清單文件中引用它。即使這沒有幫助。我曾嘗試在設計視圖中進行刷新,但仍無法擺脫丟失的樣式錯誤。 對於另一個xml佈局,出現以下錯誤

呈現問題缺少樣式。是否爲此佈局選擇了正確的主題? >使用佈局上方的主題組合框來選擇不同的佈局,或修復主題樣式引用。以下類不能被實例化: - android.support.design.widget.TabLayout(公開課,顯示異常,清除緩存) 提示:使用View.isInEditMode()在您的自定義視圖跳躍代碼或表明,當樣本數據顯示在IDE中。如果這是意外錯誤,您也可以嘗試構建項目,然後手動刷新佈局。異常詳細信息java.lang.IllegalArgumentException:您需要在設計庫中使用Theme.AppCompat主題(或後代)。在android.support.design.widget.ThemeUtils.checkAppCompatTheme在android.support.design.widget.TabLayout(ThemeUtils.java:36)在android.support.design.widget.TabLayout。(TabLayout.java:297)。(TabLayout的.java:291)在java.lang.reflect.Constructor.newInstance(Constructor.java:423)在android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:727)在android.view.LayoutInflater.rInflate_Original(LayoutInflater.java: 858)在android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70)在android.view.LayoutInflater.rInflate(LayoutInflater.java:834)在android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821)在機器人。 view.LayoutInflater.inflate(LayoutInflater.java:518)在android.view.LayoutInflater.inflate(LayoutInflater.java:397)

燦有人請指出我的方向是正確的嗎?謝謝。

以下是我的清單。

<uses-permission android:name="android.permission.INTERNET"/> 

<application 
    android:allowBackup="true" 
    android:name=".ExampleApplication" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:supportsRtl="true" 
    android:theme="@style/AppTheme"> 

    <activity 
     android:name=".activity.SplashActivity" 
     android:screenOrientation="portrait" 
     android:theme="@style/SplashTheme"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN"/> 
      <category android:name="android.intent.category.LAUNCHER"/> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name=".activity.MainActivity" 
     android:screenOrientation="portrait" 
     android:windowSoftInputMode="adjustResize"/> 
</application> 

以下是我的build.gradle

apply plugin: 'com.android.application' 
android { 
compileSdkVersion 25 
buildToolsVersion "25.0.1" 
defaultConfig { 
    applicationId "com.example.package" 
    minSdkVersion 18 
    targetSdkVersion 25 
    versionCode 1 
    versionName "1.0" 
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
    jackOptions { 
     enabled true 
    } 

    dexOptions { 
     preDexLibraries true 
     javaMaxHeapSize "4g" 
    } 

    lintOptions { 
     abortOnError false 
    } 
} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 

testOptions { 
    unitTests.returnDefaultValues = true 
} 

compileOptions { 
    sourceCompatibility JavaVersion.VERSION_1_8 
    targetCompatibility JavaVersion.VERSION_1_8 
} 

} 

dependencies { 
compile fileTree(dir: 'libs', include: ['*.jar']) 
compile group: 'com.google.code.gson', name: 'gson', version: '2.8.0' 
compile 'com.android.support:recyclerview-v7:25.2.0' 
compile 'com.android.support:cardview-v7:25.2.0' 
compile 'com.android.support:design:25.2.0' 
compile 'com.android.support:appcompat-v7:25.2.0' 
compile group: 'joda-time', name: 'joda-time', version: '2.9.6' 
compile group: 'com.google.guava', name: 'guava', version: '20.0' 
compile 'com.squareup.retrofit2:retrofit:2.1.0' 
compile 'com.squareup.retrofit2:converter-gson:2.0.2' 
compile 'com.github.zagum:Android-SwitchIcon:1.3.2' 
compile 'com.futuremind.recyclerfastscroll:fastscroll:0.2.5' 
compile 'com.prolificinteractive:material-calendarview:1.4.2' 

compile 'com.jakewharton:butterknife:8.5.1' 
annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1' 

compile 'com.google.dagger:dagger:2.7' 
annotationProcessor 'com.google.dagger:dagger-compiler:2.7' 


testCompile 'junit:junit:4.12' 
testCompile "org.robolectric:robolectric:3.0" 
testCompile "org.robolectric:shadows-support-v4:3.0" 
testCompile 'org.mockito:mockito-core:1.10.19' 

androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
    exclude group: 'com.android.support', module: 'support-annotations' 
}) 
androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.2' 
compile 'com.android.support.constraint:constraint-layout:1.0.0' 
} 

以下是我styles.xml。

<resources> 

<!-- Base application theme. --> 
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
    <item name="drawerArrowStyle">@style/DrawerArrowStyle</item> 
    <item name="android:textViewStyle">@style/RobotoTextViewStyle</item> 
    <item name="android:editTextStyle">@style/RobotoEditTextStyle</item> 
</style> 

<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar"> 
    <item name="android:windowBackground">@drawable/splash</item> 
</style> 

<style name="RobotoTextViewStyle" parent="android:Widget.TextView"> 
    <item name="android:fontFamily">sans-serif</item> 
    <item name="android:textSize">@dimen/body</item> 
    <item name="android:textColor">@color/colorBlack</item> 
</style> 

<style name="RobotoEditTextStyle" parent="android:Widget.EditText"> 
    <item name="android:fontFamily">sans-serif</item> 
    <item name="android:textSize">@dimen/body</item> 
    <item name="android:padding">@dimen/edittext_padding</item> 
</style> 

<style name="DrawerArrowStyle" parent="Widget.AppCompat.DrawerArrowToggle"> 
    <item name="spinBars">true</item> 
    <item name="color">@android:color/white</item> 
</style> 

<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar"/> 

<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light"/> 

<style name="TextInputLayoutStyle" parent="TextAppearance.AppCompat.Small"> 
    <item name="android:textColor">@color/color_android_green</item> 
    <item name="android:textStyle">bold|italic</item> 
</style> 

<style name="TextInputLayoutStyleError" parent="TextAppearance.AppCompat.Small"> 
    <item name="android:textColor">@color/colorRed</item> 
    <item name="android:textStyle">bold|italic</item> 
</style> 

<style name="CustomTextStyle" parent="@android:style/TextAppearance.Widget.TabWidget"> 
    <item name="android:textSize">20sp</item> 
</style> 

<style name="CustomSwitch" parent="Theme.AppCompat.Light"> 
    <!-- active thumb & track color (30% transparency) --> 
    <item name="colorControlActivated">@color/colorAccent</item> 

    <!-- inactive thumb color --> 
    <item name="colorSwitchThumbNormal">@color/colorGrayDarker</item> 

    <!-- inactive track color (30% transparency) --> 
    <item name="android:colorForeground">@color/colorGray</item> 
</style> 

<style name="CustomTabLayout" parent="Base.Widget.Design.TabLayout"> 
    <item name="tabIndicatorColor">@color/colorGold</item> 
    <item name="tabSelectedTextColor">@color/colorGold</item> 
</style> 

<style name="StyledScrollerTextAppearance"> 
    <item name="android:textColor">@color/colorWhite</item> 
</style> 

Tablayout XML片段

<android.support.design.widget.TabLayout 
    android:id="@+id/callScheduleType" 
    style="@style/CustomTabLayout" 
    android:layout_width="0dp" 
    android:layout_height="40dp" 
    app:layout_constraintLeft_toLeftOf="parent" 
    app:layout_constraintRight_toRightOf="parent" 
    app:layout_constraintTop_toBottomOf="@+id/guidelineNavHeight"> 

    <android.support.design.widget.TabItem 
     android:id="@+id/personal" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:text="personal"/> 

    <android.support.design.widget.TabItem 
     android:id="@+id/community" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:text="community"/> 
</android.support.design.widget.TabLayout> 
+0

向我們展示您的「TabLayout」代碼。 – FiN

回答

2

我能夠從classpath中恢復回來了Android gradle這個插件版本來解決這個問題「com.android.tools.build:gradle:2.3 .0-beta4'到項目頂層構建文件中的classpath'com.android.tools.build:gradle:2.2.3'。

+0

也適合我... – FOliveira