Android - ActionBar在自定义背景后跌破了标签

时间:2014-01-09 17:12:34

标签: android android-actionbar

似乎如果我向操作栏添加标签然后以某种方式自定义它,则标签会出现在操作栏上方。

当我:

时会发生这种情况
  • 使用操作栏的自定义背景
  • 尝试删除操作栏标题或图标
  • 使用操作栏的自定义视图

任何解决方案?我没有使用ActionbarSherlock

1 个答案:

答案 0 :(得分:0)

您可以使用Android默认操作栏。

android:theme="@android:style/Theme.Holo.Light.DarkActionBar"

这将为您提供默认操作栏。下面的代码将添加操作栏标签。

public class MainActivity extends Activity {

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

        ActionBar.TabListener tabListener = new ActionBar.TabListener() {

            @Override
            public void onTabReselected(Tab arg0, FragmentTransaction arg1) {
                // TODO Auto-generated method stub

            }

            @Override
            public void onTabSelected(Tab arg0, FragmentTransaction arg1) {
                // TODO Auto-generated method stub

            }

            @Override
            public void onTabUnselected(Tab arg0, FragmentTransaction arg1) {
                // TODO Auto-generated method stub

            }
        };

        ActionBar actionBar = getActionBar();
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
        for (int i = 0; i < 3; i++) {
            actionBar.addTab(actionBar.newTab().setText("Tab " + (i + 1))
                    .setTabListener(tabListener));
        }
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

}

最后要自定义背景,可以参考开发者网站 http://developer.android.com/training/basics/actionbar/styling.html#CustomBackground