powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / Android [игнор отключен] [закрыт для гостей] / Что помещать в строковый ресурс - как правильно?
37 сообщений из 37, показаны все 2 страниц
Что помещать в строковый ресурс - как правильно?
    #38800343
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делаю настройки программы и вот что не понял:

было:

Код: java
1.
2.
    <CheckBoxPreference
        android:key="pref_dialog_sound"



потом заметил что в программе слишком во многих местах вызываю
Код: java
1.
getBoolean("pref_dialog_sound", true)



решил "сэкономить" и поместил в строковый ресурс:


Код: java
1.
2.
    <CheckBoxPreference
        android:key="@string/pref_dialog_sound"




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

Как в таком случае принято поступить?
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38800347
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола ПитерскийКак в таком случае принято поступить?
Константы не принято выносить в ресурсы. Но принято их делать публичными константами public final static.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38800357
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanМикола ПитерскийКак в таком случае принято поступить?
Константы не принято выносить в ресурсы. Но принято их делать публичными константами public final static.

Это я знаю и так делаю - но не знаю как обратиться к такой константе в .XML ?
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38800375
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола Питерскийwadmanпропущено...

Константы не принято выносить в ресурсы. Но принято их делать публичными константами public final static.

Это я знаю и так делаю - но не знаю как обратиться к такой константе в .XML ?
Разве студия не намекает на deprecated?

Попробуй пакеты дописать, может получится.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38800382
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
public final static PREF;

в pref_settings.xml
<CheckBoxPreference
android:key="как тут обратиться к PREF???"

Самое смешное что у меня раньше было сделано получение значения параметра через статическую функцию, но название параметра тоже там было дважды - в функции и в xml и тут глянул книгу Голощапова "Программирование для мобильных устройств" - так он все натройки помещает в текстовые ресурсы:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SharedPreferences prefs 
PreferenceManager.getDefaultSharedPreferences(this); 
// читаем открытия файла из CheckBoxPreference 
if (prefs.getBoolean(getString(R.string.pr_openmode), false)) { 
openFile(FILENAME); 

// читаем размер текста из EditTextPreference 
float fSize Float.parseFloat( 
prefs.getString(getString(R.string.pr_size), "20")); 
// читаем стили текста из ListPreference 
String regular prefs.getString(getString(R.string.pr_style), 
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38800428
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всетаки тут должно быть какое-то простое решение. Может это можно поместить в нестроковые, а какие другие ресурсы?

Самое интересное что студия вообще не предлагает помещать это в другие ресурсы и для такого xls горит зеленый квадратик? Хотя для других xls квадратик был-бы желтым - а так можно и забыть поместить локальные ресурсы в строковые для перевода :

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
  
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
 <CheckBoxPreference
        android:key="@string/pref_dialog_sound"
        android:defaultValue="true"
        android:summaryOff="Без звука"
        android:summaryOn="Показывать диалоги со звуком"
        android:title="Звук сообщений" />
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38800438
Фотография Джибс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я вообще в свой класс оборачиваю.

типа

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
class myPreferences
{
 
  private static final String KEY = "KEY";
  ...

  public String getKey()
  {
    ..     get prefs ..

     pref.getString(KEY, "");
  }

  public void setKey(String value)
  {
      ...
      editor.putString(value);
   }

   ....
}
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38800453
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Джибс, так я тоже похоже сделал:

Код: java
1.
2.
3.
4.
5.
6.
public class Settings extends PreferenceActivity {
...
   public static Boolean get_pref_dialog_sound(Context context) {        
        return ((Data) context.getApplicationContext()).sharedPref.getBoolean("pref_dialog_sound", true);
    }
....



но "проблема" в том что "pref_dialog_sound" надо задавать в 2-х местах - в коде и в xls и поймал себя на том что сейчас в программе 30 настроек, а будет больше и я забываю при переименовании менять этот пар-р в ДВУХ местах.

Можно ли как сделать чтобы все ссылалось только на одно место\переменную... ?
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38800490
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторThis may also be a reference to a resource (in the form "@[package:]type:name") or theme attribute (in the form "?[package:][type:]name") containing a value of this type.
Либо ресурс (видимо не обязательно строковой), либо тема.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38800730
Фотография Джибс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола Питерскийвсе бы было хорошо - но теперь эти строковые ресурсы у меня в трансляторе для перевода на другие языки - а их переводить вообще не нужно

забить.

или вынести в отдельный файл
settings_keyvalues.xml
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38800781
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДжибсМикола Питерскийвсе бы было хорошо - но теперь эти строковые ресурсы у меня в трансляторе для перевода на другие языки - а их переводить вообще не нужно

забить.

или вынести в отдельный файл
settings_keyvalues.xml

Плохо - все <string>, которые находятся в каталоге values не важно какое имя файла берутся в транслятор, т.е. другим именем файла их не спрятать. В трансляторе куча лишних строк, которые предлагаются к переводу - это очень плохо. Пытался засунуть эти ресурсы в другие каталоги как и использовать выдуманный тег н-р "KEY_NAME" вместо <string> ни к чему хорошему не привели.

В общем остается одно - текстовое описание ключа всегда будет в 2-х экземплярах и надо незабывать их изменять в паре.

Плохо что нет н-р такого:
Код: java
1.
2.
3.
4.
5.
<string 
 name="pref_dialog_sound"
 translate:false>
 pref_dialog_sound
</string>
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38801358
Фотография Джибс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола Питерский,


ты удивишься, но сейчас посмотрел оказывается - translatable="false"

Код: sql
1.
2.
3.
4.
5.
<string 
 name="pref_dialog_sound"
 translatable="false">
 pref_dialog_sound
</string>
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38801623
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Джибс, сразу обрадовался а потом и огорчился - оказывается что студия чихала на этот параметр. Пробовал и
<string name="account_setup_imap" translatable="false">IMAP</string> и donottranslate.xml

http://tools.android.com/recent/non-translatablestrings
https://plus.google.com/ TorNorbye/posts/WsxYqtWNSMS
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38801675
Фотография Джибс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
такой вариант тоже ?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
<?xml version="1.0" encoding="utf-8"?>
<resources
  xmlns:tools="http://schemas.android.com/tools"
  tools:ignore="MissingTranslation" >

  <!-- your strings here; no need now for the translatable attribute -->

</resources>
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38801720
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола ПитерскийДжибс, сразу обрадовался а потом и огорчился - оказывается что студия чихала на этот параметр. Пробовал и
<string name="account_setup_imap" translatable="false">IMAP</string> и donottranslate.xml

http://tools.android.com/recent/non-translatablestrings
https://plus.google.com/ TorNorbye/posts/WsxYqtWNSMS
0.9.2
Код: xml
1.
<string name="test_translatable" translatable="false">test_translatable</string>
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38801728
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadman, спасибо - оказывается у меня такого нет 0.8.11 - буду обновляться.

Хотя тут указано что не сделано
http://code.google.com/p/android/issues/detail?id=76600
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38801731
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола ПитерскийХотя тут указано что не сделано
Там нечто другое сказано:
авторAndroid Studio does not currently support ( via auto-completion or quick completion ) this functionality.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38801732
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Джибстакой вариант тоже ?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
<?xml version="1.0" encoding="utf-8"?>
<resources
  xmlns:tools="http://schemas.android.com/tools"
  tools:ignore="MissingTranslation" >

  <!-- your strings here; no need now for the translatable attribute -->

</resources>



Да - и этот не работает.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38801912
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanМикола ПитерскийДжибс, сразу обрадовался а потом и огорчился - оказывается что студия чихала на этот параметр. Пробовал и
<string name="account_setup_imap" translatable="false">IMAP</string> и donottranslate.xml

http://tools.android.com/recent/non-translatablestrings
https://plus.google.com/ TorNorbye/posts/WsxYqtWNSMS
0.9.2
Код: xml
1.
<string name="test_translatable" translatable="false">test_translatable</string>



Теперь у меня версия 0.9.2 - как добраться до такого редактора переводов как у тебя на картинке - т.к. у меня остался старый
и он показывает абсолютно все строковые ресурсы к переводу?
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38801960
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола Питерский, точно 0.9.2? Я ничего особенного не делал именно для строкового редактора. Что есть, то есть. Посмотри, нет-ли файлов двойников с разными версиями в папке studio\plugins\android\lib.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802096
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никаких двойников в этом каталоге нет. Может у тебя всетаки этот редактор из какого-то дополнительно установленного плагина?
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802108
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смотри версию Android Support: у меня 10.0.9.2.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802128
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не ставил никакого Android Support. Но заметил что только в strings.xls появились ссылки как на картинке, если на первую нажать - то появляется хренб похожая как у тебя только не ввиде модального окна и там ничего не работает :)
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802133
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола ПитерскийЯ не ставил никакого Android Support.
Это и есть студия, прикрученная к идее.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802135
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Translation ввести ничего невозможно и "вытащить" этот редактор в отдельное окно тоже не получается
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802140
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanМикола ПитерскийЯ не ставил никакого Android Support.
Это и есть студия, прикрученная к идее.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802164
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола Питерский, все проще:
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802175
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadman, 10.0.9.2
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802188
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола Питерский, жамкнул правую кнопку на strings.ru русском, открыл редактор и что там не получается?
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802204
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И эта версия работает только с одной последней локализацией - т.е. нельзя уже выбирать другие
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802211
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола Питерский, переставляй с нуля. у меня нет твоих глюков:
1. Версия градле фиксится автоматом нормально.
2. Переводчик позволяет все редактировать.
3. Дизайнер позволяет выбрать все языки.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802225
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanМикола Питерский, жамкнул правую кнопку на strings.ru русском, открыл редактор и что там не получается?
Ничего не получается - редактор живет своей жизнью - значения и перевод не меняет, при нажатии кнопки + при добавлении Key его добаляет в strings.xls но в своем окне не отображает? Если нажать на глобус то добавляет локализацию (каталог) и в новом strings.xls только ОДНА строка - первая которая стоит в основном strings.xls. Короче полностью непонятная хрень.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802241
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола ПитерскийЕсли нажать на глобус то добавляет локализацию (каталог) и в новом strings.xls только ОДНА строка
Согласен, строк не должно быть вообще, но тут у меня аналогичное поведение. Остальное не имеет места быть.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802251
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все заработало!!! Оказывается если студия глючит - надо ее перезагрузить а прежде грохнуть каталог build из самой студии.
Теперь вроде вьезжаю в то что они задумали и наверно теперь всетаки имеет смысл поместить все "множественные" константы в строковые ресурсы.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802257
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола Питерскийнадо ее перезагрузить а прежде грохнуть каталог build из самой студии.
Вспомнил этот глюк. Действительно студия при первом запуске с первым проектом так сглючила (build появился) и я именно так и поступил: все шлепнул и после перезапуска студия все переиндексировала.
До остальных глюков я не успел попросту добраться.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802303
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot wadmanСогласен, строк не должно быть вообще, но тут у меня аналогичное поведение. [/quot]

Всетаки одна строка должна обязательно добавляться - иначе этой страны в виде колонки не будет в редакторе - а так видно дефолтный ресурс и рядом ВСЕ локальные переводы - круто!!! Более менее локализация теперь в студии нормальная.
...
Рейтинг: 0 / 0
Что помещать в строковый ресурс - как правильно?
    #38802325
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола ПитерскийВсетаки одна строка должна обязательно добавляться - иначе этой страны в виде колонки не будет в редакторе
То есть одна любая строка - это фикс баги с не отображением локализации из существующего пустого файла в существующей папке. Так и запишем. :)
...
Рейтинг: 0 / 0
37 сообщений из 37, показаны все 2 страниц
Форумы / Android [игнор отключен] [закрыт для гостей] / Что помещать в строковый ресурс - как правильно?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]