2014-01-13 46 views
7

我試圖將Google的LeftNavBarLibrary合併到我的應用程序中。當我加載導航欄時,最終會在活動頂部添加一個黑條。酒吧似乎佔據了傳統行動吧佔據的空間。LeftNavBar在活動頂部創建黑條

有誰知道酒吧來自哪裏或如何將其刪除。

謝謝。

enter image description here

我的應用程序的主題稍微定製。基於該程序兼容性主題由於MediaRouteActionProvider

styles.xml

<resources> 
    <style name="AppTheme" parent="@style/Theme.AppCompat"> 
     <item name="android:actionBarStyle">@style/MyActionBar</item> 
    </style> 

    <style name="MyActionBar" parent="@style/Widget.AppCompat.ActionBar"> 
     <item name="android:background">@drawable/ab_gradient</item> 
    </style> 
</resources> 

上圖中的活性具有在清單中定義的自定義主題的要求。

AndroidManifest.xml中

<activity 
    android:name="my.app.namespace.CoreActivity" 
    android:theme="@android:style/Theme.Holo.NoActionBar.Fullscreen" > 
</activity> 

的應用程序最小SDK版本爲14。因此,它不是一個專門谷歌電視的應用程序。我只能在Android 4.1和4.4設備上測試這個bug。

+0

爲什麼擴展Theme.AppCompat如果您的應用的目標API大於14?你有沒有嘗試創建一個值-14,並在那裏放置一個資源文件來擴展Holo的應用主題? – Imanol

+0

如果您想要實現像在Gmail或G +中看到的左側導航欄,則應該使用支持庫中的DrawerLayout。請參閱http://developer.android.com/training/implementing-navigation/nav-drawer.html – alanv

+0

回答這兩個問題。我針對的是appcompat主題,因爲從我可以告訴Chromecast mediarouteactionprovider需要appcompat庫。導航抽屜是一個隱藏的用戶界面,使用d-pad驅動界面並不容易。這就是爲什麼我選擇使用googles lefthandnav庫,因爲它是爲那些導航電視用戶所期望的。 – Redshirt

回答

2

我對付動作條是這樣的:

getActionBar().hide(); 

嘗試把這個在您的主要活動,或者是家長和一直存在的活動。 不要擔心清單中的主題,只需使用標題欄設置主題並通過代碼隱藏它即可。

希望這會有所幫助。

1

看看:Hide the Status Bar on Android 4.0 and Lower

請注意,這是在<application>標籤。這可能會幫助你。

<application 
    ... 
    android:theme="@android:style/Theme.Holo.NoActionBar.Fullscreen" > 
    ... 
</application> 

或編程:通過設置自定義主題風格windowActionBar爲false:

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     // If the Android version is lower than Jellybean, use this call to hide 
     // the status bar. 
     if (Build.VERSION.SDK_INT < 16) { 
      getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
        WindowManager.LayoutParams.FLAG_FULLSCREEN); 
     } 
     setContentView(R.layout.activity_main); 
    } 
0

您可以設置機器人。 注意:在這種情況下,getActionBar()將返回null。如果使用主題移除操作欄,那麼該窗口根本不會允許操作欄。

0

感謝您的答案傢伙。真正的問題實際上是LeftNavBar.java類在屏幕頂部創建了一個人造邊緣。我以爲谷歌發佈的圖書館會比這更好,但顯然不是。