Android.support.v7.widget.Toolbar sınıfı şişirilirken hata oluştu?


82

Bu yöntemi takip ederek Uygulamam için Materyal Tasarım almaya çalışıyorum .

Uygulamayı her çalıştırdığımda aşağıdaki hatayı gösteriyor:

Android.support.v7.widget.Toolbar sınıfı şişirilirken hata oluştu.

Uygulama uyumluluğunu doğru şekilde ekleyip eklemediğimi kontrol ettim. Ama benim için hepsi Doğru. Lütfen söyle bana neyi yanlış yapıyorum?

build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion '21.0.2'

    defaultConfig {
        applicationId "io.bxbxbai.feedlistviewdemo"
        minSdkVersion 14
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles 'proguard-rules.pro'
        }
    }
}

configurations {
    all*.exclude group: 'com.android.support', module: 'support-v4'
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile project(':materialDesign')
    compile 'com.balysv.materialmenu:material-menu:1.4.0'
    compile 'com.android.support:appcompat-v7:21.+'
}

Logcat

02:11.641  20583-20583/io.bxbxbai.feedlistviewdemo E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: io.bxbxbai.feedlistviewdemo, PID: 20583
    java.lang.RuntimeException: Unable to start activity ComponentInfo{io.bxbxbai.feedlistviewdemo/io.bxbxbai.androiddemos.MainActivity}: android.view.InflateException: Binary XML file line #3: Error inflating class android.support.v7.widget.Toolbar
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2224)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2283)
            at android.app.ActivityThread.access$800(ActivityThread.java:144)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5158)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: android.view.InflateException: Binary XML file line #3: Error inflating class android.support.v7.widget.Toolbar
            at android.view.LayoutInflater.createView(LayoutInflater.java:620)
            at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:696)
            at android.view.LayoutInflater.parseInclude(LayoutInflater.java:816)
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:745)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
            at android.support.v7.app.ActionBarActivityDelegateBase.setContentView(ActionBarActivityDelegateBase.java:228)
            at android.support.v7.app.ActionBarActivity.setContentView(ActionBarActivity.java:102)
            at io.bxbxbai.androiddemos.MainActivity.onCreate(MainActivity.java:31)
            at android.app.Activity.performCreate(Activity.java:6144)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2181)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2283)
            at android.app.ActivityThread.access$800(ActivityThread.java:144)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5158)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.reflect.InvocationTargetException
            at java.lang.reflect.Constructor.constructNative(Native Method)
            at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
            at android.view.LayoutInflater.createView(LayoutInflater.java:594)
            at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:696)
            at android.view.LayoutInflater.parseInclude(LayoutInflater.java:816)
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:745)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
            at android.support.v7.app.ActionBarActivityDelegateBase.setContentView(ActionBarActivityDelegateBase.java:228)
            at android.support.v7.app.ActionBarActivity.setContentView(ActionBarActivity.java:102)
            at io.bxbxbai.androiddemos.MainActivity.onCreate(MainActivity.java:31)
            at android.app.Activity.performCreate(Activity.java:6144)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2181)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2283)
            at android.app.ActivityThread.access$800(ActivityThread.java:144)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5158)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.NoSuchMethodError: android.support.v4.content.ContextCompat.getDrawable
            at android.support.v7.internal.widget.TintManager.getDrawable(TintManager.java:133)
            at android.support.v7.internal.widget.TintTypedArray.getDrawable(TintTypedArray.java:62)
            at android.support.v7.widget.Toolbar.<init>(Toolbar.java:248)
            at android.support.v7.widget.Toolbar.<init>(Toolbar.java:190)
            at java.lang.reflect.Constructor.constructNative(Native Method)
            at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
            at android.view.LayoutInflater.createView(LayoutInflater.java:594)
            at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:696)
            at android.view.LayoutInflater.parseInclude(LayoutInflater.java:816)
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:745)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
            at android.support.v7.app.ActionBarActivityDelegateBase.setContentView(ActionBarActivityDelegateBase.java:228)
            at android.support.v7.app.ActionBarActivity.setContentView(ActionBarActivity.java:102)
            at io.bxbxbai.androiddemos.MainActivity.onCreate(MainActivity.java:31)
            at android.app.Activity.performCreate(Activity.java:6144)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2181)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2283)
            at android.app.ActivityThread.access$800(ActivityThread.java:144)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5158)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
            at dalvik.system.NativeStart.main(Native Method)

DÜZENLE

toolbar.xml

<?xml version="1.0" encoding="utf-8"?>

<android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="?attr/colorPrimaryDark"/>

activity_main.xml

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        tools:context=".MainActivity"
        tools:ignore="MergeRootFrame">

        <include android:id="@+id/toolbar" layout="@layout/toolbar" />

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/btn_feed_list_demo"
            android:text="@string/feed_list_demo"/>

    </RelativeLayout>

@GabrieleMariotti Edit the Edit ..
AruLNadhaN

Ayrıca bu sorunu yaşadım ve bir süre sonra MyActivity'nin Activity yerine ActionBarActivity'yi genişletmeyi unuttuğumu fark ettim. Birine yardım edebilir
MathieuMaree

@ArulNadhan, bir çözüm buldun mu? Ben de aynı sorunu yaşıyorum.
William Grand

@WilliamGrand Cevabı görün ...
AruLNadhaN

1
Benim için hata, <android.support.v7.widget.Toolbar /> yerine <android.widget.Toolbar />
kullanıyor olmamdı

Yanıtlar:


74

Yeni androidx uygulamaları kullanıyorsanız , Araç Çubuğu yazarken Studio bunu otomatik olarak tamamlarandroid.support.v7.widget.Toolbar , ancak androidx.appcompat.widget.Toolbarbunun yerine kullanmanız gerekir , aksi takdirde bu hatayı alırsınız.


@ Gudin, bu bağımlılıklar gerçekte nerede anlatılıyor?
bzal

2
Bunun belgeleri kesinlikle androidx'i içerecek şekilde güncellenmemiştir. Bu yanıt için teşekkürler!
Aman Alam

Bunun hala bir şey olması şaşırtıcı. Gönderiniz için teşekkürler, çok zaman kazandırdı.
William T. Mallard

37

Üzgünüm beyler. Bu sorunu uzun zaman önce çözdüm. Bir çok değişiklik yaptım. Bu yüzden hangisinin hile yaptığını anlayamıyorum.

  1. Kimliği Jared Burrows'un önerdiği şekilde değiştirdim.

  2. Destek kitaplığımı kaldırdım ve projemi temizledim ve yeniden ekledim.

  3. Dosya -> Önbellekleri Geçersiz Kıl / Yeniden Başlat'a gidin.

Umarım çalışır.

Kodum şimdi böyle görünüyor

activity.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <include
        android:id="@+id/toolbar_actionbar"
        layout="@layout/toolbar_default"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>

    <android.support.v4.widget.DrawerLayout
        android:id="@+id/drawer"
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/toolbar_actionbar">

        <FrameLayout
            android:id="@+id/container"
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>

        <fragment
            android:id="@+id/fragment_drawer"
            android:name="com.arul.anahy.drawer.NavigationDrawerFragment"
            android:layout_width="@dimen/navigation_drawer_width"
            android:layout_height="match_parent"
            android:layout_gravity="start"
            app:layout="@layout/fragment_navigation_drawer"/>
    </android.support.v4.widget.DrawerLayout>
</RelativeLayout>

toolbar_default.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
    style="@style/ToolBarStyle"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="?attr/colorPrimary"
    android:minHeight="@dimen/abc_action_bar_default_height_material"/>

ToolBarStyle

<style name="ToolBarStyle" parent="">
        <item name="popupTheme">@style/ThemeOverlay.AppCompat.Light</item>
        <item name="theme">@style/ThemeOverlay.AppCompat.Dark.ActionBar</item>
 </style>

Benim durumumda yukarıda ve önerildiği gibi 3. adımı yaptım.
Gem

@dimen/abc_action_bar_default_height_materialözel olarak işaretlendi. Göz ardı edilebilecek bir uyarı mı?
hgoebl

Parent = "AppTheme.NoActionBar" öğesini parent = "" olarak değiştirmek sorunumu çözdü.
Gurvinder Singh

29

Eski kodumu yeni android'de androidx uygulamalarıyla kullanmaya çalıştığımda bu bana oldu. XML tanımınızı olarak değiştirin;

<androidx.appcompat.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="@color/colorPrimary"
            android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
            app:titleTextColor="@android:color/white" />

daha sonra java kodunuzda;

import androidx.appcompat.widget.Toolbar;

1
Teşekkürler kardeşim aradığım cevap
buydu

24

Aşağıdakileri değiştirerek bu sorunu çözebildim:

Araç Çubuğu düzeninde şuna benzer her şeyi değiştirin:

android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary"

ile

android:minHeight="@dimen/abc_action_bar_default_height_material"
android:background="@color/myColor"

Cevap için teşekkürler.
Meher

android: background = "? attr / colorPrimary" araç çubuğu herhangi bir maddi öğenin dahil edilmesini istemediğinden bunun kaldırılması gerekir
TSG anti SO karanlık kuvvetleri

api 19 ve altı için
TSG anti SO karanlık güçleri

Çok teşekkürler,
Günümü


6

AppCompat Library'nin 23.2.0 sürümünü kullandığımla aynı sorunu yaşadım. Destek kitaplığını 23.2.1'e güncelledim ve sorun çözüldü.

Bu Araç Çubuğu Sorunu 23.2.1'de çözülmüştür.


bu en güncel düzeltme olabilir. SDK'nızı güncelleyin.
ralphgabb

2
23.3.0'da yalnızca
4.4.2'ye

5

Lütfen şu Google Blog gönderisini okuyun: http://android-developers.blogspot.com/2014/10/appcompat-v21-material-design-for-pre.html

<android.support.v7.widget.Toolbar
    android:id="@+id/my_awesome_toolbar"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:minHeight="?attr/actionBarSize"
    android:background="?attr/colorPrimary" />

Ayrıca, ona aynı "kimliği" iki kez veriyorsunuz, lütfen eklemenizden "kimliği" kaldırın:

<include android:id="@+id/toolbar" layout="@layout/toolbar" />

1
Ad alanını neden kaldırdınız? Ayrıca, kimliklere yapılan iki referansla ilgili olarak, bir kimlik düzendeki araç çubuğunun örneğini ifade eder ve diğeri Kaynak kimliğidir. Yani ikisine de ihtiyacın olduğunu düşünüyorum.
William Grand

@WilliamGrand Gönderisini ne zaman "düzenlediğinden" emin değilim. Şimdi onun araç çubuğunun ayrı bir dosyada olduğunu görüyorum, ad alanını terk etmek sorun değil. Aynı "kimlikler" den iki tane var ve onunki bu düzeni başka bir düzene getirmek için include'i kullanıyor. İçeride "id" ye ihtiyacı yoktur.
Jared Burrows

1
İçerme üzerindeki kimlik, şişirildikten sonra düzende bu öğe için kullanılan kimliği geçersiz kılar; bu bir dahil etme özelliğidir. Kodunda doğru kimliği kullandığı sürece hiçbir şeye zarar vermemelidir.
Lorne Laliberte

3

Aynı sorunla karşılaşıyorum ama bu güncellemeden sonraydı appcompatv23.2.0. Yukarıdaki tüm önerileri denedim ama işe yaramadı. Sonra Gradle dosyama geçtim ve değiştirdim:

dependencies {
compile 'com.android.support:appcompat-v7:23.2.0’
compile 'com.android.support:design:23.2.0'

}

ile:

dependencies {
compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.android.support:design:23.0.1'
}

Projeyi yeniden oluşturun ve sorun ortadan kalktı. Uygulama kompakt v23.2.0 ile ilgili bir sorun olabilir, umarım yeni güncellemeyle çalışabilmemiz için daha iyi bir çözüm ortaya çıkar.

Bu yardımcı olur umarım. Teşekkür ederim.


compile 'com.android.support:design:23.0.1'bu kod sorunumu çözdü
Mohammed Tawfik

3

Bu sorunu app build.gradle dosyasını değiştirerek düzelttim.

Gradle Eklentisi 2.0+ için

 android {  
   defaultConfig {  
     vectorDrawables.useSupportLibrary = true  
    }  
 }  

Gradle Eklentisi 1.5 için

 android {  
   defaultConfig {  

     generatedDensities = []  
  }  

  aaptOptions {  
    additionalParameters "--no-version-vectors"  
  }  
 } 

3

Bunun eski bir soru olduğunu biliyorum, ancak son zamanlarda aynı sorunla karşılaştım. (Belirlediğim zaman bir Proguard sorun olmaktan sona erdi minifyEnablediçin falsebu oluyor durdu.)

Durdurmak için proguard etkinken, başka yerde bulduğum bir çözüm sayesinde (sorunun proguard olduğunu keşfettikten sonra) proguard kuralları dosyama aşağıdakileri ekledim

-dontwarn android.support.v7.**
-keep class android.support.v7.** { *; }
-keep interface android.support.v7.** { *; }

Gerekli olup olmadıklarından emin değilim, ancak şu satırları da ekledim:

-keep class com.google.** { *; }
-keep interface com.google.** { *; }

2
Bu hatayı yalnızca sürüm yapısında aldığım için bana yardımcı oldu.
Rahul Chandrabhan

1

Ben de aynı problemle karşılaştım. Benim için çalışan çözüm. V7.Toolbar kullanıyorsanız, Theme.AppCompat'tan genişletilmiş temayı kullanmanız gerekir. * Android'den genişletilmiş temayı kullanamazsınız: Theme.Material. * Farklı stil özelliklerine sahip oldukları için.

Umarım yardımcı olur.


1

Bu satırları aşağıdaki gibi kaldırdım:

önce :

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar1"
    android:layout_width="match_parent"
    android:layout_height="@attr/actionBarSize"
    android:minHeight="@attr/actionBarSize"
    android:layout_alignParentTop="true" >

sonra:

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar1"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:layout_alignParentTop="true" >

"@ Attr / actionBarSize" yerine benim için işe yarayan belirli boyutlar koyun.


1

Bu sorunu çözmek için. ilk önce \ sdk \ extras \ android \ support'dan en yeni android-support-v7-appcompat'ı eklemelisiniz

  1. Ana projeyi kapatın.
  2. Android-support-v7-appcompat'ı kaldırın.
  3. Eclipse'i yeniden başlatın.
  4. Android-support-v7-appcompat'ı ekleyin.
  5. Temiz, projeyi inşa etmek için.
  6. Ardından ana projeyi açın ve tüm projeleri oluşturun.
  7. Hata hala devam ediyor. Tutulmayı yeniden başlatın. Bu kadar.

Bu benim için çalışıyor ve Android Studio'yu kullanmanızı şiddetle tavsiye ederim.


1

Bu benim için çalıştı: 'com.android.support:appcompat-v7:21.0.3' derlemesini gradle'a ekleyin. SDK hedefini 21 olarak değiştirin. Umarım sizin için çalışır!


1

Benim için yaptıktan sonra çalıştı:

  • Temizlik çözümü.
  • Uygulamayı telefondan silerek, hata ayıkladım.
  • Visual Studio kapatılıyor.
  • Android projelerinde / bin / ve / obj / klasörlerini silme.
  • Çözüm yeniden başlatılıyor.

1

Yukarıdaki çözümlerden hiçbiri benim için işe yaramadı.

Projemde bir araç çubuğum yoktu, ancak aynı hatayı aldım.

Projeyi temizledim, uygulamayı kaldırdım. Sonra bir gradlew build --refresh-bağımlılıkları çalıştırdım ve xml dosyalarında karşılık gelen kod olmadan bazı onclick olayları olduğunu öğrendim.

Onları kaldırdım, projeyi yeniden inşa ettim ve işe yaradı.

Bağımlılıklar güncellenmiş gibi görünmüyordu, ama bu başka bir hikaye.


1

VS'de Xamarin durumunda, eklemeniz gerekir

Theme = "@style/MyThemesss"

youractivity.cs için.

Bunu ekliyorum ve devam ediyorum.


1

Benim durumumda bu hatayı Imageview'deki Enflasyon istisnasında, daha düşük sürümlerde ve lolipop işletim sisteminde alıyordum.

Çekilebilir v-24 klasöründeki tüm görüntü dosyalarını çekilebilir klasöre taşırken bu istisnayı çözdüm.


0

RelativeLayout'ta araç çubuğu dahil sorunlar yaşadım, LinearLayout ile deneyin. Araç çubuğunu kaplamak istiyorsanız şunu deneyin:

 <RelativeLayout>

    <LinearLayout>
      --INCLUDE tOOLBAR--
    </LinearLayout>

    <Button></Button>

 </RelativeLayout>

Nedenini anlamıyorum ama benim için çalışıyor.


0

Bu hatanın neden benimle olduğu belli değil ama çözdüm. Aynı düzeni, satır içi veya dahil kullanarak kullandım, her ikisi de NPE hatasına neden oluyor. Bu yüzden bunun bir düzen sorunu olmadığını düşünüyorum.

BaseActivity, initActionBar () yöntemine sahip ActionBarActivity'yi genişleten soyut bir sınıfa sahiptim. OnCreate of child sınıfında bu yöntemi geçersiz kılıp çağırıyorum. Bunun gibi bir şey:

android.support.v7.app.ActionBar mActionBar;

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_book_appointment);

    // Inject View using ButterKnife
    ButterKnife.inject(this);

    // Init toolbar & status bar
    initActionBar();
}

@Override
protected void initActionBar() {
    super.initActionBar();

    setSupportActionBar(mToolBar);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);

    mActionBar = getSupportActionBar();
    mActionBar.setDisplayHomeAsUpEnabled(true);
    mActionBar.setHomeButtonEnabled(true);
}

YUKARIDAKİ KODLA NPE HATASI OLDU. NEDEN YANLIŞ OLDUĞUMU BİLMİYORUM. AŞAĞIDAKİ KODLA ÇÖZÜYORUM VE AYNI GÖRÜNÜYOR.

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_book_appointment);
    ButterKnife.inject(this);

    setSupportActionBar(mToolBar);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);

    mActionBar = getSupportActionBar();
    mActionBar.setDisplayHomeAsUpEnabled(true);
    mActionBar.setHomeButtonEnabled(true);

    initActionBar();
}

@Override
protected void initActionBar() {
    super.initActionBar();
}

0

Benim durumumda, inflater.inflate (R.layout.some_layout, null) çağırırken bir sorun vardı. Sorun ViewGroup parametresi olduğundan boş.


0

Benim için sorunun çözümü, Ana Faaliyetim için XML belgesinde bulundu. Başlangıçta araç çubuğum idi <android.support.v7.widget.Toolbar. Bunu çözmek için olarak değiştirdim <android.widget.Toolbar. Yine de bunun neden işe yaradığını bilmiyorum. Neden olduğuna dair herhangi bir fikri olan var mı?


<android.support.v7.widget.Toolbar, lolipop öncesi cihazları desteklemektir. Bu android-developers.blogspot.in/2014/10/… 'i
Sagar Devanga

0

Sorun, lolipop öncesi cihazlar içindi. Aşağıdakileri değiştirerek bu sorunu çözebildim:

Araç Çubuğu düzeninde şuna benzer her şeyi değiştirin:

android:layout_height="?android:attr/actionBarSize"
android:background="?android:attr/colorPrimary"

ile

android:layout_height="?attr/actionBarSize"
android:background="@color/colorPrimary"

0

Benim için hata şuydu:

    <android:support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"/>

onun yerine:

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"/>

Özellikle, ilk satırda nokta yerine "android" ve "destek" arasında bir kolon vardı.


Bunun kimseye nasıl yardımcı olabileceğini anlamıyorum.
ichalos

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.