android – 始终在ActionBar中显示完整标题

我有一个带有徽标,标题,三个标签和一个操作项的ActionBar.

在纵向模式下,一切看起来都不错,因为选项卡被移动到堆叠的ActionBar,如下所示:
_________________
#我的头¤
_________________
标签1 |标签2 |标签3
_________________

但在横向模式下,标题会被截断,因为标签会移动到顶部的ActionBar,如下所示:
__________________________
#我… |标签1 |标签2 |标签3 | ¤
__________________________

无论如何,我可以告诉ActionBar标题永远不会被截断吗?如果没有,我至少可以设置标题的宽度吗?
(即使在横向模式下,如果选项卡移动到堆叠的ActionBar,也可以)

编辑:

代码要求.这里是:

public class MyActivity extends SherlockFragmentActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    ActionBar actionBar = super.getSupportActionBar();
    actionBar.setHomeButtonEnabled(true);
    actionBar.setDisplayHomeAsUpEnabled(true);
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

    actionBar.setTitle("My Long Title");

    actionBar.addTab(actionBar
            .newTab()
            .setText("Tab 1")
            .setTabListener(
                    new TabListener<MyFragment>(this,"tab1",MyFragment.class,null)));
    actionBar.addTab(actionBar
            .newTab()
            .setText("Tab 2")
            .setTabListener(
                    new TabListener<MyFragment>(this,"tab2",null)));
    actionBar.addTab(actionBar
            .newTab()
            .setText("Tab 3")
            .setTabListener(
                    new TabListener<MyFragment>(this,"tab3",null)));
}
}

解决方法

我想如果你想要固定的标题然后在菜单文件夹下你将有一个像xml的文件
<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <group android:id="@+id/group" >
        <item
            android:id="@+id/menu1"
            android:orderInCategory="100"
            android:showAsAction="ifRoom"
            android:title="@string/menu1"/>

        <item 
            android:id="@+id/Search"
            android:actionViewClass="android.widget.SearchView"
            android:icon="@drawable/ic_action_search"
            android:orderInCategory="100"
            android:showAsAction="always"
            android:title="@string/menu3">
        </item>

        <item
           ..............
         </item>

    </group>

</menu>

在上面的代码中android:showAsAction起着至关重要的作用.如果你想要任何应该显示的项目,那么你应该使用android:showAsAction =“always”.这肯定会解决你的问题.

我没有使用SherlockFragmentActivity,但我认为这可以帮到你很多.

我建议你通过你的菜单文件夹的xml文件处理它,并在你的java文件中进行以下处理.代码如下: –
在你的onCreate()中试试这个: –

setContentView(R.layout.activity_action_bar_eg);//this is the xml file name inside the menu folder
getActionBar().setHomeButtonEnabled(true);
getActionBar().setDisplayShowTitleEnabled(false);
ActionBar bar=getActionBar();
bar.show();

对于您的问题的解决方案也有此更改

@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        super.onCreateOptionsMenu(menu);
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.activity_action_bar_eg,menu);
}

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...