2015-08-04 14 views
14

Ho un toolbar.xml:android.widget.Toolbar non può essere convertito in android.support.v7.widget.Toolbar

<android.support.v7.widget.Toolbar 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:background="@color/color_primary" 
android:elevation="4dp" 
android:theme="@style/ThemeOverlay.AppCompat.Dark" /> 

Ho un include tag ad un altro dei miei layout di attività:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:theme="@style/AppTheme"> 

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

<android.support.v7.widget.RecyclerView 
    android:id="@+id/grade_list" 
    android:scrollbars="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#FFFFFF" /> 

E ce l'ho realizzato nella mia attività, che si estende AppCompatActivity:

Toolbar toolbar; 
    toolbar = (Toolbar)findViewById(R.id.tb); 
    setSupportActionBar(toolbar); 

Tuttavia, ho un m ottenendo il seguente errore quando eseguo il mio app:

Error:(26, 29) error: incompatible types: android.widget.Toolbar cannot be converted to android.support.v7.widget.Toolbar 

Inoltre, quando ho vista il mio layout nell'editor, ricevo il seguente messaggio:

Missing styles. Is the correct theme chosen for this layout? 
Use the theme combo box above the layout to choose a different layout, or to fix the theme style references. 
Failed to find style 'toolbarStyle' in current layout. 

E il mio styles.xml:

<resources> 
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
    <item name="colorPrimary">@color/color_primary</item> 
    <item name="colorPrimaryDark">@color/color_primaryDark</item> 
    <item name="colorAccent">@color/color_accent</item> 
    <item name="colorControlNormal">@color/color_accent</item> 
</style> 

non vedo dove sto andando male. Il tema corretto è selezionato nell'editor e nel mio file manifest. Tutto l'aiuto è apprezzato come sempre!

+3

nella parte superiore della tua attività ci deve essere 'import android.support.v7.widget.Toolbar;' non 'importa android.widget.Toolbar;' –

risposta

31

Si utilizza android.support.v7.widget.Toolbar nel codice XML, ma nel codice java che si sta importando android.widget.Toolbar che è un tipo diverso. Cambia la tua importazione in android.support.v7.widget.Toolbar e dovrebbe funzionare.

+9

wow sono un idiota – Markoe7

+0

@Steve nvm steve, io ha fatto lo stesso xD –

+0

idem, grazie per la correzione! –

1
android.support.v7.widget.Toolbar toolbar; 

toolbar = (android.support.v7.widget.Toolbar) findViewById (R.id.toolbar); setSupportActionBar (barra degli strumenti);

+0

Fornire alcune spiegazioni al codice. –

+0

Sembra che tu abbia perso una riga di codice dal tuo blocco di codice. –

Problemi correlati