2014-02-20 113 views
10

即使長度在10-15個字符以內,我的android應用程序中的操作欄的標題中也有一個省略號。我正在使用導航抽屜,它工作正常,但幾個開關後,它將省略號添加到標題。Android操作欄標題省略號

我沒有使用任何自定義xml格式化我的操作欄。我如何刪除省略號?我應該使用什麼風格/選項來確保它永遠不會刪除標題?

回答

8

我有這個相同的問題。有足夠的空間,但包含標題文本的TextView不會更改大小以適應其新的文本內容。這解決了我的問題:

protected Handler mUiHandler = new Handler(Looper.getMainLooper()); 

protected void setActionBarTitle(final CharSequence title, final boolean showHomeAsUp) 
{ 
    mUiHandler.post(new Runnable() 
    { 
     @Override 
     public void run() 
     { 
      Activity activity = getActivity(); 
      if(activity != null){ 
       ActionBar ab = activity.getActionBar(); 
       ab.setDisplayHomeAsUpEnabled(showHomeAsUp); 
       ab.setDisplayShowTitleEnabled(false); 
       activity.setTitle(title); 
       ab.setDisplayShowTitleEnabled(true); 
      } 
     } 
    }); 
} 
+0

謝謝,它的工作 –

6

簡化西蒙的回答,您可以直接重寫你的活動setTitle方法與此:

@Override 
public void setTitle(final CharSequence title) { 
    new Handler(Looper.getMainLooper()).post(new Runnable() { 
     @Override 
     public void run() { 
      MyActivity.super.setTitle(title); 
     } 
    }); 
} 

我這樣做是由所有的活動延長一個ParentActivity我的應用程序。

1

稍有不同的/簡單,但以下爲我工作了同樣的想法:

... 
    getActivity().runOnUiThread(new Runnable() { 
     @Override 
     public void run() { 
      getActivity().setTitle(title); 
     } 
    }); 
    ...