2015-05-09 169 views
0

所以我的朋友「幫助」我的程序有點只是他的幫助帶來了比實際幫助更多的問題。我以前在我的一個活動中有一個工具欄,而其餘的代碼工作,如果工具欄存在,程序總是停止。什麼都不要錯。如何解決這個問題?安卓工具欄不再工作

代碼:

import android.os.Bundle; 
import android.support.v4.view.ViewPager; 
import android.support.v7.app.ActionBarActivity; 
import android.support.v7.widget.Toolbar; 

public class ProjectCreateScreen extends ActionBarActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.secondary_layout1); 

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

    } 
} 

的xml文件:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:id="@+id/rl"> 

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

</RelativeLayout> 

還有很多更多的代碼比我張貼在這裏,但我刪除它,因爲除了這部分作品的一切。

+0

你可以發佈Logcat輸出嗎?我沒有看到代碼的任何問題,因爲...你說沒有發生錯誤,但是應用程序不會在沒有說明導致崩潰的原因的情況下崩潰。也許你發佈gradle依賴關係?或者代碼中任何地方的工具欄的用法 –

+0

引起:java.lang.IllegalStateException:此活動已經有一個由窗口裝飾提供的操作欄。請勿在您的主題中請求Window.FEATURE_ACTION_BAR並將windowActionBar設置爲false以代替使用工具欄。 – Richard

回答

0

如果錯誤是因爲你在上面說:

致:java.lang.IllegalStateException:本次活動已經由窗口裝飾提供一個操作欄。不要求Window.FEATURE_ACTION_BAR並設置windowActionBar爲false在主題使用工具欄,而不是

這意味着你沒有禁用該活動提供Android的默認操作欄,它的主題。進入您的styles.xml文件和主題活動你使用(或者,如果所有活動都使用同一主題的應用程序使用),然後執行以下(舉例):

<style name="AppThemeToolbar" parent="Theme.AppCompat.Light.NoActionBar"> 
    <item name="android:windowActionBar">false</item> 
    ... 
    ... 
</style> 

安卓windowActionBar設爲false將禁用默認操作欄,並且使用自定義工具欄/操作欄的活動現在不會再崩潰。

+0

做到了,但仍然停止:( – Richard

+0

鏈接您正在使用的主題,並嘗試通過讓主題的父母爲我編輯..我提供了一個帶有動作欄的主題的示例。創建一個新主題並設置主題在AndroidManifest中,或者擴展當前主題爲您的活動,讓它的父母與NoActionbar結尾(光與黑暗)在我看到回答。 –

+0

設置它爲.NoActionBar幫助謝謝:) – Richard