【问题标题】:How can I remove title and icon completetly in Actionbar sherlock?如何在 Actionbarsherlock 中完全删除标题和图标?
【发布时间】:2012-05-02 16:12:33
【问题描述】:

我使用操作栏 Sherlock,但我需要从栏中删除标题和图标。

我用过

getSupportActionBar().setDisplayShowHomeEnabled(false);
getSupportActionBar().setDisplayShowTitleEnabled(false);

它起作用了,图标和标题消失了,但我的项目仍然出现在正确的位置。有没有办法完全删除标题和图标而不是隐藏它们。我在堆栈溢出中发现了一个类似的问题,但没有人回答。

编辑

     Before my bar look like:   -- Icon Title MenuItem1 MenuItem2--
     After my bar look like:    --            MenuItem1 MenuItem2--
     I want my bar look like:   -- MenuItem1 MenuItem2

【问题讨论】:

  • 你说“成功了”,但你还是不开心。请考虑使用更多文字,甚至图片来解释您的问题。
  • 我可以在这里问一个相关的问题吗?我还尝试通过将显示设置为 false 来删除图标和标题。我膨胀了一个自定义视图来替换图标和标题。但是,它可以工作,在自定义视图膨胀之前,我可以看到图标和标题。对此有什么想法吗?
  • 感谢隐藏图标和标题的命令!非常有用,即使您只是将其作为问题陈述。

标签: android actionbarsherlock


【解决方案1】:

您的“菜单项”永远不会左对齐。它们将向右对齐。左边是您的标题和图标(目前已删除)和导航(选项卡、列表等)。如果您有足够的操作栏项目,它们将流向左侧,但它们总是从右侧开始。这无法通过 Android SDK 进行更改。

【讨论】:

    【解决方案2】:

    您可以参考此代码,然后您可以获得解决方案...只需根据您的要求申请......

    ActionBar actionBar = getActionBar();
              actionBar.setDisplayShowTitleEnabled(false);
              actionBar.setDisplayShowHomeEnabled(false);
              actionBar.setDisplayShowCustomEnabled(true);
    
    RelativeLayout relative = new RelativeLayout(getApplicationContext());
    
    TextView tv1 = new TextView(this);
             tv1.setText("Test1");
             tv1.setTextColor(Color.GREEN);
             tv1.setPadding(3,13,3, 12);
             tv1.setId(1);
             tv1.setOnClickListener(this);
    
    TextView tv2 = new TextView(this);
             tv2.setText("Test2");
             tv2.setTextColor(Color.GREEN);
             tv2.setPadding(3,13,3,12);
             tv2.setId(2);
             tv2.setOnClickListener(this);
    
    TextView tv3 = new TextView(this);
             tv3.setText("Test3");
             tv3.setTextColor(Color.GREEN);
             tv3.setPadding(3,13,3, 12);
             tv3.setId(3);
             tv3.setOnClickListener(this);
    
    TextView tv4 = new TextView(this);
             tv4.setText("Test3");
             tv4.setTextColor(Color.GREEN);
             tv4.setPadding(3,13,3, 12);
             tv4.setId(4);
             tv4.setOnClickListener(this);
    
    LinearLayout ll = new LinearLayout(this);
                 ll.addView(tv1);
                 ll.addView(tv2);
                 ll.addView(tv3);
                 ll.addView(tv4);
    
    relative.addView(ll);
    actionBar.setCustomView(relative);
    

    【讨论】:

      【解决方案3】:
      getSupportActionBar().setIcon(android.R.color.transparent);
      

      【讨论】:

        【解决方案4】:

        您可以通过使用操作栏上的上下文菜单来执行此操作。查看 Sherlock ABS Demos,有一个 Activity:ActionModes,它显示了一个非常简单的示例,可能对您有用。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2021-12-14
          • 1970-01-01
          • 2013-07-08
          • 2018-07-05
          • 2020-04-18
          • 1970-01-01
          • 2016-04-09
          相关资源
          最近更新 更多