我用行动吧福尔摩斯,但我需要从栏中删除标题和图标。
我用了
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
您的“菜单项”绝对不会出现被左对齐。 他们将靠右对齐。 左边是你的标题和图标(目前删除)和导航(标签,列表等)。 如果你有足够的操作栏项目,它们将流过左侧,但他们总是会从右边开始。 这不可能通过Android SDK来改变。
您可以参考此代码,那么你可以得到解决......只是采用按您的需求量的....
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);
getSupportActionBar().setIcon(android.R.color.transparent);
您可以通过使用上下文菜单在操作栏做到这一点。 检查福尔摩斯ABS演示,有一个活动:ActionModes,它显示了一个非常简单的例子,这可能是对你有用。