Этот вопрос задавался ранее - но без удовлетворительного ответа вообще! Так что я пытаюсь это снова.
Я хочу присвоить значку средства запуска приложений (отображаемому на начальном экране!) Другой, более короткий заголовок. Кажется, программа запуска берет свой ярлык из раздела mainfest о ярлыке основного действия, как здесь:
<activity android:name="MainActivity" android:label="@string/app_short_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
Я уже изменил исходную ссылку на имя моего приложения @ string / app_name на другой, более короткий ресурс строки здесь.
НО - большое НО : это также, конечно, меняет название этого занятия по умолчанию! И я не хотел, чтобы это произошло, достаточно места для длинного имени приложения! Повторная установка длинного заголовка при onCreate
использовании setTitle(int)
метода также не годится, потому что короткое имя будет видно пользователю в течение короткого времени, но достаточно долго, чтобы заметить!
И - пожалуйста, не отвечайте на мой вопрос, ссылаясь на пользовательские заголовки ... Я не хочу идти так долго, просто из-за глупого заголовка строки! Это так сложно - нарисовать собственную строку заголовка для такого маленького эффекта!
Есть ли простой способ просто дать пусковую установку другую строку на экран? Спасибо за ваши ответы!
Редактировать: Еще одна причина, по которой наличие настраиваемой заголовка заголовка - это боль, заключается в том, что он не будет выглядеть как заголовок заголовка по умолчанию, я должен был бы явно сделать вещи, чтобы он выглядел одинаково на каждом устройстве! И это не может быть решением, если, в конце концов, я не хочу другого внешнего вида!
Я искал то же самое, и вот что сработало для меня.
Это даст короткое имя вашей иконке запуска приложения.
Чтобы добавить большее имя на панель приложения, вам просто нужно добавить:
в ваш основной файл активности Java.
источник
showTitle
изdisplayOptions
. Затем вы можете включить заголовок в упражненииonCreate
следующим образом: this.getActionBar (). SetDisplayOptions (ActionBar.DISPLAY_SHOW_HOME | ActionBar.DISPLAY_SHOW_TITLE); Это лучше, чем мигающее имя иконки, но это означает, что при каждом действии в вашем приложении должен быть включен заголовок, если это требуется.setTitle(R.string.app_name);
?Решение Марка Реноуфа мне не удается (с использованием Nexus 4 и Android 4.4). Сбой при использовании ярлыков, ярлыки используют метку основной активности вместо имени приложения. Я видел некоторые приложения, такие как GMail и Google Keep, которые отлично работают. Но когда вы открываете их, я замечаю, что момент между заголовком пустым и появляется заголовок (что лучше, чем мигание имени приложения перед установкой заголовка с помощью setTitle ()).
Итак, вот лучшее решение, которое я нашел :
Создайте стиль, в котором ActionBar не показывает заголовок / метку:
Я использую навигационный ящик и использую логотип (потому что я использую логотип и значок для своего приложения). Вы можете использовать что угодно, но не использовать showTitle . Затем в AndroidManifest.xml установите тему для MainActivity:
Затем в методе onCreate () объекта MainActivity установите заголовок панели действий:
После этого вы можете позвонить:
Хитро, но стоит.
источник
Это, вероятно, не удовлетворит то, что вы хотите сделать, но вы подумали о создании заставки, которая будет отображаться очень кратко (с заголовком по умолчанию), а затем запускает новую фактическую "основную" активность с заголовком по вашему выбору, используя
setTitle(int)
метод ? Я не пробовал это, чтобы увидеть, работает ли это, но это могло бы создать приятную работу вокруг, которая не показывает не совсем плавный характер того, чего вы пытаетесь достичь.источник
Для тех, кто использует Support / Appcompat Toolbar через
setSupportActionBar()
метод, заголовок Activity может быть установлен в XML панели инструментов:Это заменит метки приложений и действий, установленные в манифесте.
android.support.v7.widget.Toolbar
источник
Я нашел обходной путь для этой проблемы
В
manifest.xml
Напишите свое имя приложения в
android:label
из пусковой установки (основной) деятельности .Это сделает ярлык вашего основного действия таким же, как и ярлык приложения.
Затем в
onCreate()
функции вашей Launcher (основной) деятельности напишите это утверждениеЗдесь напишите ярлык, который вы хотите присвоить своей основной (Launcher) активности.
источник
Вы можете сделать что-то вроде этого:
Вам нужно будет создать собственный макет, чтобы держать заголовок. Это может быть так же просто, как (вызывается
my_title.xml
в этом случае):В вашем
AndroidManifest.xml
файле вы просто должны установить заголовок для приложения, что будет отображаться на значке панели запуска. Для вашей деятельности вам не нужно устанавливать заголовок там.источник
setTitle
. :-(Панель запуска на самом деле показывает android: label и android: значок для активности (й), которые объявляют
поэтому метка приложения бесполезна.
источник