2012-11-15 10 views
8

ロゴ、タイトル、3つのタブ、1つのアクションアイテムを持つActionBarがあります。ポートレートモードのすべてで常にActionBarに完全なタイトルを表示

タブを積層アクションバーに移動しているため、このように、よさそうだ: _ __ __ _ __ _ __ _ __ _ __
#マイ・タイトル                         ユーロ
_
_ __ _ __ _ __ _ __ _ __ _
タブ1 |タブ2 |タブ3
__ _ __ _ __ _ __ _ __ _ __

しかし、タブは、トップアクションバーに移動されているので、風景モードでタイトルは次のように、切り捨てられますこの: __ _ ___ __ _ __ _ _ _ _ __ _ __ _ __ _ __
#マイ... |タブ1 |タブ2 |タブ3 |  ¤
__ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __

がとにかくあります私が言うことができますタイトルを切り捨てるべきではないActionBar?そうでない場合は、少なくともタイトルの幅を設定できますか? (タブがさえランドスケープモードに積層アクションバーに移動してしまった場合それは私のためokです)

EDIT:

コードは、要求されました。ここでは、次のとおりです。

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", 
          MyFragment.class, null))); 
    actionBar.addTab(actionBar 
      .newTab() 
      .setText("Tab 3") 
      .setTabListener(
        new TabListener<MyFragment>(this, "tab3", 
          MyFragment.class, null))); 
} 
} 
+1

あなたのコード/ xmlを投稿してください。 –

+0

@アンダーザソリューションを投稿してください。あなたは1つを持っている場合 –

答えて

0

私はあなたがメニューフォルダの下に、その後、固定タイトルをしたい場合は、上記のコードアンドロイドで

<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> 

のようなxmlファイルを持っているだろうと思い:重要なを果たしている showAsAction常に表示する必要のあるアイテムが必要な場合は、android:showAsAction = "always"を使用する必要があります。問題が確実に解決されます。

私はSherlockFragmentActivityを使用していませんが、これは多くのお役に立てると思います。

は、私は次のようにあなたがあるあなたのJava file.Codeに次の処理を使用して、メニューのフォルダのXMLファイルを通じてそれを処理することをお勧め: - あなたの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); 
} 
+2

これは本当に質問に答えていない、いいえ?彼はアクションボタン(アイテム)を持っている必要はありません。そして、もし全てのActionButtonがすでに隠されていて、タブのためにタイトルがまだ切り詰められていたら? – NLemay

関連する問題