如何在设置自定义操作栏视图后删除默认的Android操作栏

问题描述 投票:0回答:1

嗨,我有一个问题我正在尝试将操作栏应用程序图标,标题,菜单或...从左向右移动我正在使用带有setCustomView的SherlockActionBar看代码我的活动

    private void BiftorSetUpActionBar() {
    // TODO Auto-generated method stub
    getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); 
    View actionbarview = getLayoutInflater().inflate(R.layout.biftor_action_bar, null);

    View app_actionbar_bg =(View) actionbarview.findViewById(R.id.app_actionbar_bg);

    app_actionbar_bg.setBackgroundResource(R.drawable.list_item_bg_normal);
    BiftorApptitle=(TextView) actionbarview.findViewById(R.id.app_name);
    BiftorAppIcon=(ImageView) actionbarview.findViewById(R.id.app_icon);
    BiftorAppIcon.setClickable(true);
    BiftorAppMenu=(ImageView) actionbarview.findViewById(R.id.app_menu);
    BiftorAppIcon.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            if(!mDrawerLayout.isDrawerOpen(Gravity.RIGHT))
                mDrawerLayout.openDrawer(Gravity.RIGHT);
            else
                mDrawerLayout.closeDrawer(Gravity.RIGHT);


        }
    });

    BiftorAppMenu.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            openOptionsMenu();
        }
    });


    getSupportActionBar().setCustomView(actionbarview);
}

我的动作栏布局

    <?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="match_parent"
    android:id="@+id/app_actionbar_bg"
    android:background="@drawable/list_item_bg_normal"

     >

    <ImageView
        android:id="@+id/app_icon"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:src="@drawable/ic_launcher" />

    <TextView
        android:id="@+id/app_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/app_menu"
        android:layout_centerHorizontal="true"
        android:text="Large Text"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="#ffeeeeee"
        android:textSize="20sp"
        android:textStyle="bold" />

    <ImageView
        android:id="@+id/app_menu"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/app_icon"
        android:layout_alignParentLeft="true"
        android:src="@drawable/abs__ic_menu_moreoverflow_holo_dark" />

</RelativeLayout>

一切正常,但我有一个问题,当我的应用启动时,原始的(默认)android操作栏将加载2-3秒,然后将显示我的自定义操作栏。我不想要,我想完全删除原稿。

看这个视频,你会明白我的意思

This video

我正在等待。谢谢大家

编辑1:

我通过在Google和此网站上进行搜索来更改了某些内容,但仍然先设置默认操作栏,然后再加载我的自定义操作栏

private void BiftorSetUpActionBar(){ // TODO自动生成的方法存根

//getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); 
getSupportActionBar().setDisplayShowHomeEnabled(false);
getSupportActionBar().setDisplayShowTitleEnabled(false);
View actionbarview = getLayoutInflater().inflate(R.layout.biftor_action_bar, null);
View app_actionbar_bg =(View) actionbarview.findViewById(R.id.app_actionbar_bg);
app_actionbar_bg.setBackgroundResource(R.drawable.list_item_bg_normal);

  .
  .
  .
  .Skip....
  .
  .
  .

getSupportActionBar().setCustomView(actionbarview);
getSupportActionBar().setDisplayShowCustomEnabled(true);}

并更改了style.xml

   <style name="BiftorAppTheme" parent="Theme.Sherlock.Light.DarkActionBar">
        <item name="actionBarStyle">@style/Widget.Styled.ActionBar</item>

    </style>

    <style name="Widget.Styled.ActionBar" parent="Widget.Sherlock.Light.ActionBar.Solid.Inverse">
        <item name="background">@drawable/list_item_bg_normal</item>
        <item name="android:background">@drawable/list_item_bg_normal</item>
    </style>

但还是一无所有:-(

java android android-actionbar actionbarsherlock
1个回答
0
投票
在片段中,您可以这样做:
© www.soinside.com 2019 - 2024. All rights reserved.