Intereting Posts
Как передать строку html в webview на android Получите minSdkVersion и targetSdkVersion из файла apk Я хочу проанализировать API карт Google для обратного геокодирования в Android Воспроизведение Android MediaPlayer заикается по проводным наушникам, а не по Bluetooth Вызов функции DialogFragment show () изнутри onRequestPermissionsResult () вызывает исключение IllegalStateException в Marshmallow Несколько новых продуктов Proguard вызывают сервисы Google Play v10.2.6 до v11.0.0 в проекте Multidex Как я могу использовать внешние JAR в проекте Android? Как разблокировать весь код операционной системы Android? После обновления до Android Developer Tools версии 22 компиляция завершилась неудачей Как изменить целевую сборку на проекте Android? Правильное использование setEmtpyView в AdapterView Как написать настраиваемый фильтр для ListView с ArrayAdapter Вызов context.getResources () возвращает null Меню Android Options в фрагменте Как я могу обеспечить числовую десятичную клавиатуру в Android?

Установка заголовка и заголовка Action Bar

Я хочу установить заголовок и субтитры моей панели действий перед компиляцией. У меня есть способ сделать это так:

ActionBar ab = getActionBar(); ab.setTitle("My Title"); ab.setSubtitle("sub-title"); 

Но я не хочу этого делать во время работы. Есть ли какой-либо XML-файл или любое место, где я могу указать эти заголовки?

Я пытаюсь добиться этого:

Введите описание изображения здесь

Редактировать:

Причина, по которой я хочу это в xml, заключается в том, что я хочу, чтобы мое приложение поддерживалось в уровне API 8. И метод getActionBar () поддерживается, по крайней мере, на уровне 11.

Solutions Collecting From Web of "Установка заголовка и заголовка Action Bar"

Вы можете сделать что-то подобное для кода для обеих версий:

 /** * Sets the Action Bar for new Android versions. */ @TargetApi(Build.VERSION_CODES.HONEYCOMB) private void actionBarSetup() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { ActionBar ab = getActionBar(); ab.setTitle("My Title"); ab.setSubtitle("sub-title"); } } 

Затем вызовите actionBarSetup() в onCreate() . if код запускается только на новых версиях Android, а @TargetApi позволяет компилировать код. Поэтому он безопасен как для старых, так и для новых версий API.

Кроме того, вы также можете использовать ActionBarSherlock ( см. Редактирование ), чтобы вы могли иметь ActionBar для всех версий. Вам нужно будет внести некоторые изменения, например, чтобы ваши действия расширяли SherlockActivity и getSupportActionBar() , однако это очень хорошее глобальное решение.

редактировать

Обратите внимание, что когда этот ответ был изначально написан, ActionBarSherlock , который с тех пор устарел , был решением для совместимости.

В настоящее время библиотека Google appcompat-v7 предоставляет те же функции, но поддерживается (и активно обновляется) компанией Google. Действия, необходимые для реализации ActionBar должны:

  • Расширить AppCompatActivity
  • Использовать производную Theme.AppCompat

Чтобы получить экземпляр ActionBar используя эту библиотеку, используется метод getSupportActionBar() именем.

Название для панели действий может быть в AndroidManifest, здесь:

 <activity . . . android:label="string resource" . . . </activity> 

Android: label . Пользовательский ярлык для этой деятельности. Метка отображается на экране, когда действие должно быть представлено пользователю. Он часто отображается вместе с значком активности. Если этот атрибут не установлен, вместо него используется метка, установленная для приложения в целом (см. Атрибут метки элемента). Метка активности – будь она задана здесь или элементом – также является меткой по умолчанию для всех фильтров намерений активности (см. Атрибут метки элемента). Метка должна быть установлена ​​как ссылка на строковый ресурс, так что она может быть локализована, как и другие строки в пользовательском интерфейсе. Тем не менее, в качестве удобства при разработке приложения его можно также установить как необработанную строку.

Существует еще один вариант, который никто не прокомментировал: из библиотеки поддержки V7 был реализован Google ActionBarSupport , совместимый с ActionBar с Android 2.2 до последнего.
Если вы измените свой ActionBar вы можете сделать getSupportActionBar().setTitle("") на всех версиях Android.

Попробуй это:

 android.support.v7.app.ActionBar ab = getSupportActionBar(); ab.setTitle("This is Title"); ab.setSubtitle("This is Subtitle"); 

Неа! Вы должны сделать это во время выполнения.

Если вы хотите сделать свое приложение обратно совместимым, просто проверьте уровень API-интерфейса устройства. Если он выше 11, вы можете играть в ActionBar и устанавливать субтитры.

 if(Integer.valueOf(android.os.Build.VERSION.SDK) >= 11){ //set actionbar title } 
  <activity android:name=".yourActivity" android:label="@string/yourText" /> 

Поместите этот код в файл манифеста Android и он должен указать заголовок панели действий, что вам нужно!

Попробуй это:

В strings.xml добавьте название и субтитры …

 ActionBar ab = getActionBar(); ab.setTitle(getResources().getString(R.string.myTitle)); ab.setSubtitle(getResources().getString(R.string.mySubTitle)); 

Для действия вы можете использовать этот подход для указания субтитров вместе с заголовком в манифесте.

Manifest:

 <activity android:name=".MyActivity" android:label="@string/my_title" android:description="@string/my_subtitle"> </activity> 

Мероприятия:

 try { ActivityInfo activityInfo = getPackageManager().getActivityInfo(getComponentName(), PackageManager.GET_META_DATA); //String title = activityInfo.loadLabel(getPackageManager()).toString(); int descriptionResId = activityInfo.descriptionRes; if (descriptionResId != 0) { toolbar.setSubtitle(Utilities.fromHtml(getString(descriptionResId))); } } catch(Exception e) { Log.e(LOG_TAG, "Could not get description/subtitle from manifest", e); } 

Таким образом, вам нужно только указать строку заголовка один раз, и вы можете указать субтитры прямо рядом с ним.

Вы можете установить заголовок в панели действий с помощью AndroidManifest.xml . Добавить ярлык в activity

 <activity android:name=".YourActivity" android:label="Your Title" /> 

Попробуй это

Просто зайдите в свой файл манифеста. И вы определили метку для каждого действия в вашем файле манифеста.

 <activity android:name=".Search_Video" android:label="@string/app_name" android:screenOrientation="portrait"> </activity> 

Здесь меняются

андроид: метка = "@ строка / your_title"

Это тривиальный однострочный вкладыш в Котлине

supportActionBar?.title = getString(R.string.coolTitle)