2014-09-03 2 views
0

Я пытаюсь настроить мой Actionbar, и до сих пор я получил то, что хотел (мне нужно отформатировать его так, чтобы он выглядел красиво, но у меня есть исходный дизайн, который я хотел). Теперь мой ActionBar выглядит следующим образом:Обновление Actionbar гладко - Xamarin Android

New Actionbar

Но теперь я имею проблему, что мой ActionBar выглядит следующим образом, когда мое приложение в настоящее время начала: Old Actionbar

и после 1-2 нескольких секунд «перепрыгивает» на проект выше (когда активность полностью запущена).

Итак, мой вопрос в том, возможно ли, что по крайней мере на правой панели башен загружается начало объявления и что значки появляются, когда операция полностью загружена (или даже если можно загрузить полную новую панель действий при запуске)

Это путь я настраивая ActionBar:

protected override void OnCreate(Bundle bundle) 
    { 
     RequestWindowFeature(WindowFeatures.ActionBar); 
     base.OnCreate(bundle); 
     // this.ActionBar.NavigationMode = ActionBarNavigationMode.Tabs; 
     // Set our view from the "main" layout resource 
     ActionBar mActionBar = this.ActionBar; 
     mActionBar.SetDisplayShowHomeEnabled(false); 
     mActionBar.SetDisplayShowTitleEnabled(false); 

     mActionBar.SetCustomView(Resource.Layout.custom_actionbar); 
     mActionBar.SetDisplayShowCustomEnabled(true); 



     SetContentView(Resource.Layout.Main); 
    } 

А вот макет для моего нового ActionBar:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="50dp" 
android:background="#E1E2E3"> 
<TextView 
    android:id="@+id/title_text" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_centerInParent="true" 
    android:textAllCaps="true" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:textColor="#fff" 
    android:textStyle="bold" 
    android:text="olla" /> 
<ImageView 
    android:id="@+id/imageView1" 
    android:layout_width="35dp" 
    android:layout_height="35dp" 
    android:layout_alignParentLeft="true" 
    android:layout_centerVertical="true" 
    android:layout_marginLeft="8dp" 
    android:src="@drawable/back_ico" /> 
<Button 
    android:id="@+id/ususal1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentRight="true" 
    android:layout_marginLeft="8dp" 
    android:background="@drawable/butt_toolbar_style" 
    style="@style/button_text" 
    android:text="abc" /> 
<Button 
    android:id="@+id/ususal2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentRight="true" 
    android:layout_marginLeft="8dp" 
    android:background="@drawable/butt_toolbar_style" 
    style="@style/button_text" 
    android:text="def" 
    android:visibility="invisible" /> 
</RelativeLayout> 

Я также видел, что есть такая вещь, как ActionBar.IOnMenuVisibilityListener, который должен быть вызван до ActionBar показывается, но это как-то никогда не будет выполняться (или, может быть, я что-то неправильно дозированием)

С наилучшими пожеланиями

ответ

0

Вы нашли решение по этому вопросу? У меня была такая же проблема, и мне пришлось поместить тему в элемент приложения в файле AndroidManifest.xml.

styles.xml 
 
<style name="home"> 
 
    <item name="android:layout_height" >wrap_content</item> 
 
    <item name="android:layout_width" >fill_parent</item> 
 
</style> 
 

 
AndroidManifest.xml 
 
<application android:label="myappname" android:theme="@style/home">

это то, что вам нужно добавить, чтобы сделать его работу. Оставьте остальную часть кода как есть.