Подтвердить что ты не робот

Имя приложения для Android отображается как название мероприятия

Я просмотрел манифест для приложения, а в панели запуска приложений он отображается как имя Activity, а не его имя приложения. Почему это. У меня есть другое приложение, где, когда я его устанавливаю, есть 5 записей для каждого действия в приложении, когда должно быть только одно имя - приложение? Поэтому, когда я запускаю, в стартовом списке есть 5 одинаково названных приложений. Они названы в честь приложения, но для каждого из них есть один. Что может быть причиной этого?

4b9b3361

Ответ 1

Для первой проблемы вы должны знать, что имя происходит от атрибута android:label в теге приложения:

<application android:name="ApiDemosApplication"
   android:label="@string/activity_sample_code"
   android:icon="@drawable/app_sample_code">

Для второй проблемы, в манифесте, вполне вероятно, что все ваши действия определяют фильтр намерений с действием android.intent.category.LAUNCHER. Например:

<activity android:name="ApiDemos">
     <intent-filter>
         <action android:name="android.intent.action.MAIN" />
         <category android:name="android.intent.category.DEFAULT" />
         <category android:name="android.intent.category.LAUNCHER" />
     </intent-filter>
</activity>

Если у вас есть теги-теги-шаблоны для всех действий, вы должны вынуть теги фильтра намерения на всех, кроме Activity, которые вы хотите запустить при запуске.

Ответ 2

Вышеприведенный ответ неверен. В нем говорится:

имя происходит от атрибута android: label в теге приложения

Это не так. Возьмите следующий код, например.

<activity android:name="ApiDemos" android:label="@string/app_name">
     <intent-filter>
         <action android:name="android.intent.action.MAIN" />
         <category android:name="android.intent.category.DEFAULT" />
         <category android:name="android.intent.category.LAUNCHER" />
     </intent-filter>
</activity>

В этом коде имя приложения, которое отображается в панели запуска, устанавливается атрибутом android:label в теге activity, а не тегом application, как сказано в вышеприведенном ответе.

Чтобы исправить принятый ответ, имя, указанное под значком в панели запуска, происходит от атрибута android:label в теге активности точки входа activity (тег активности, который содержит категории DEFAULT и LAUNCHER), если вы не укажете его там, в этом случае он исходит из атрибута android:label в теге application.

Ваша первая проблема может быть решена путем изменения атрибута android:label в теге активности точки входа.

Ответ 3

Один из способов иметь другое имя приложения (имя, которое отображается под значком приложения) и другое имя для активности, которая запускается при нажатии на значок приложения, - это явно указать другую строку в действии onCreate(), например:

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

  // Do your thing
  // ... bla bla bla

  getActionBar().setTitle(R.string.activity_title);
}

Надеюсь, это поможет!

Ответ 4

Когда вы создаете Activity через Eclipse, свойство android: ярлык внутри вашей активности автоматически устанавливается в "@string/your_activity_name" в AndroidManifest.xml. Добавляя фильтр намерений, чтобы обеспечить запуск этой операции, ваша панель запускает тот же ярлык, что и ярлык Activity android:.

Если вы хотите пометить Launcher своим именем приложения, вы должны изменить ярлык Activity android: на что-то вроде "@string/app_name".

Ответ 5

Запуск Android версии 4.1.2 имя приложения будет "статическим" в отношении метки, определенной в наборе действий в качестве основного запуска, а не переопределенной в любых фильтрах намерений.

Ответ 6

Как будто вы хотите разместить изображение в месте заголовка панели инструментов. Вы должны обновить метку определенной активности в манифесте андроида как android:label="";, выполнив это, ваше имя активности не будет отображаться на панели инструментов после просмотра изображения и, пожалуйста, используйте следующий код для настройки вида изображения вместе с значком навигации и нет заголовка панели инструментов.

try {
    Toolbar  toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    toolbar.setTitle("");
    if (getSupportActionBar() != null)
        getSupportActionBar().setIcon(R.drawable.header_image_wt);
} catch (Exception e) {
    e.getMessage();
}