У меня есть Activity, чей заголовок сохраняет изменения, но иногда его длинные и заканчиваются эллипсами. Можно ли установить эллипс в среднее?
Установить эллипс заголовка активности на середину?
Ответ 1
((TextView) ((FrameLayout) ((LinearLayout) ((ViewGroup) getWindow()
.getDecorView()).getChildAt(0)).getChildAt(0)).getChildAt(0))
.setEllipsize(TextUtils.TruncateAt.MIDDLE);
получил его из андроида: установите строку заголовка посередине
Ответ 2
Вы можете сделать это:
final int actionBarTitle = Resources.getSystem().getIdentifier("action_bar_title", "id", "android");
final TextView title = (TextView)getWindow().findViewById(actionBarTitle);
if ( title != null ) {
title.setEllipsize(TextUtils.TruncateAt.MIDDLE);
}
Ответ 3
если вы используете панель инструментов, вы можете добавить эту функцию перед настройкой
private void setToolbarTextEllipsizeInMiddle(Toolbar toolbar){
try {
toolbar.setTitle("'");
for (int i = 0; i < toolbar.getChildCount(); i++) {
View view = toolbar.getChildAt(i);
if (view instanceof TextView) {
TextView tv = (TextView) view;
tv.setEllipsize(TextUtils.TruncateAt.MIDDLE);
}
}//end for i
toolbar.setTitle("");
} catch (Exception e) {
}
}
Ответ 4
Попробуйте использовать android:ellipsize
Обратитесь android: ellipsize на странице разработчиков Android.