Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Anren
1 / 1 / 0
Регистрация: 22.03.2016
Сообщений: 7
#1

Как локализовать массив заголовков? - Программирование Android

23.03.2016, 08:32. Просмотров 163. Ответов 7
Метки нет (Все метки)

Есть массив заголовков на русском языке созданный программно в java. Нужно его перевести на английский язык.
Через Stringовые ресурсы не получается. В программировании нуб. Помогите разобраться


Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
 String head_array[] = {"Норма", "Недостаточность митрального клапана", "Стеноз митрального клапана",
            "Недостаточность аортального клапана", "Стеноз аортального клапана",
            "Недостаточность трехстворчатого клапана", "Стеноз трехстворчатого клапана"};
    
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ListView ListView = (ListView) findViewById(R.id.listView);
//устанавливаем массив в ListView
        ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, head_array);
        ListView.setAdapter(adapter);
        
 
        //Обрабатываем щелчки на элементах ListView:
        ListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            public void onItemClick(AdapterView<?> a, View v, int position, long id) {
                switch (position) {
                    case 0:
                        Intent intent = new Intent(getApplicationContext(), norm.class);
                        startActivity(intent);
                        break;
                    case 1:
                        Intent intent2 = new Intent(getApplicationContext(), mitral.class);
                        startActivity(intent2);
                        break;
                    case 2:
                        Intent intent3 = new Intent(getApplicationContext(), mitral_2.class);
                        startActivity(intent3);
                        break;
                    case 3:
                        Intent intent4 = new Intent(getApplicationContext(), aort.class);
                        startActivity(intent4);
                        break;
                    case 4:
                        Intent intent5 = new Intent(getApplicationContext(), aort_2.class);
                        startActivity(intent5);
                        break;
                    case 5:
                        Intent intent6 = new Intent(getApplicationContext(), tri.class);
                        startActivity(intent6);
                        break;
                    case 6:
                        Intent intent7 = new Intent(getApplicationContext(), tri_2.class);
                        startActivity(intent7);
                        break;
                }
            }
                                        }
        );
 
    }
    
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.03.2016, 08:32     Как локализовать массив заголовков?
Посмотрите здесь:

Как локализовать папку assets? - Программирование Android
Привет форум! Кто ни будь может объяснить как локализовать папку assets? В инете мало информации об этом и та вся на инглише

Кодировка заголовков E-mail писем - Программирование Android
Здравствуйте. Читаю заголовки (тему) email письма через TextView и получаю такой эффект: Какой-нибудь русский...

Как вывести JSONArray массив? - Программирование Android
Не могу вывести JSONArray массив помогите кто чем может!

Как отправить по bluetooth массив int? - Программирование Android
Как отправить по bluetooth массив(int)? Желательно отправить по нажатию кнопки.

Как записать массив строк в файл? - Программирование Android
Я хочу записать значение listview в файл а потом при загрузке достать оттуда весь масив и заново добавить в ListView через адаптер у меня...

Как данные курсора превратить в массив - Программирование Android
Первый код Cursor c = db.query(&quot;friends&quot;, new String{&quot;_id&quot;,&quot;firstname&quot;,&quot;lastname&quot;}, &quot;_id&quot; + &quot;&lt;=?&quot;, new String{&quot;100&quot;}, null, null,...

Как добавить в ArrayList массив из ресурсов? - Программирование Android
Возможно ли добавить в ArrayList&lt;String&gt; array_list = new ArrayList&lt;String&gt;(); массив из ресурсов? или только array_list.add ?

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
YuraAAA
1566 / 1308 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
23.03.2016, 12:04     Как локализовать массив заголовков? #2
Цитата Сообщение от Anren Посмотреть сообщение
Через Stringовые ресурсы не получается.
не может такого быть. Как Вы это делали?
Pablito
2419 / 1864 / 583
Регистрация: 12.05.2014
Сообщений: 6,603
Завершенные тесты: 1
23.03.2016, 12:05     Как локализовать массив заголовков? #3
Цитата Сообщение от Anren Посмотреть сообщение
Нужно его перевести на английский язык.
так переведи, в чем проблема конкретно? ты не знаешь как переводятся слова?
Цитата Сообщение от Anren Посмотреть сообщение
Есть массив заголовков на русском языке созданный программно в java.
их надо положить в ресурсы, даже при создании ресурсов среда разработки предлагает сделать несколько разных ресурсов для разных локалей
Цитата Сообщение от Anren Посмотреть сообщение
Через Stringовые ресурсы не получается
это не причина, например у меня - получается
Anren
1 / 1 / 0
Регистрация: 22.03.2016
Сообщений: 7
23.03.2016, 14:07  [ТС]     Как локализовать массив заголовков? #4
Ложил заголовки в String файлы. Вставлял в массив ссылки - среда пишет пишет, что не ресурсы типа int, а не string. Пробовал содать стринг с итемами и сразу в адаптер вставить - то же не работает, у адаптера какая-то ошибка. Вопрос в том как вложить в стринг, а затем реализовать. Подчеркиваю - я в программировании новичок
Pablito
2419 / 1864 / 583
Регистрация: 12.05.2014
Сообщений: 6,603
Завершенные тесты: 1
23.03.2016, 14:19     Как локализовать массив заголовков? #5
Не удается конвертировать int в String
Anren
1 / 1 / 0
Регистрация: 22.03.2016
Сообщений: 7
23.03.2016, 15:42  [ТС]     Как локализовать массив заголовков? #6
Я нашел такое решение для себя, только еще не проверил
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
Resources res = getResources();
    TypedArray head = res.obtainTypedArray(R.array.head);
    
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ListView ListView = (ListView) findViewById(R.id.listView);
//устанавливаем массив в ListView
 
        ListView.setAdapter((ListAdapter) head);
Добавлено через 1 час 9 минут
Так не работает - сразу ошибка.
Попробовал так - то же самое
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
String[] head = getResources().getStringArray(R.array.head);
    
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ListView ListView = (ListView) findViewById(R.id.listView);
//устанавливаем массив в ListView
 
        ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, head);
        ListView.setAdapter(adapter);
Подскажите, что не так делаю
Pablito
2419 / 1864 / 583
Регистрация: 12.05.2014
Сообщений: 6,603
Завершенные тесты: 1
23.03.2016, 15:52     Как локализовать массив заголовков? #7
Цитата Сообщение от Anren Посмотреть сообщение
Так не работает - сразу ошибка.
Попробовал так - то же самое
тут принято показывать логи ошибок

Цитата Сообщение от Anren Посмотреть сообщение
String[] head = getResources().getStringArray(R.array.head);
это должно быть внутри метода, например внутри onCreate
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.03.2016, 16:41     Как локализовать массив заголовков?
Еще ссылки по теме:

Как локализовать Windows service? - C#
Ситуация такая: Есть написанный на C# Windows service, VS 2010. Без интерфейса. Молча себе работает, ресурсов нет у него и локализация...

Как локализовать приложение хрома - Google Keep? - Софт
Простенькое приложение гугл хрома для заметок. Хотелось бы перевести на свой язык. Не нахожу его в файлах. Подскажите что делать

Как локализовать название приложения в сторе? - Windows Phone
Вопрос? Как при подготовке к публикации приложения для Windows Phone Store задавать название для каждого языка отдельно? Как это...

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

Сформировать массив из строки заголовков - PHP
Здравствуйте. Есть ли в PHP готовая функция (может в какой-то библиотеке), которая формирует ассоциативный массив из строки заголовков? ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Anren
1 / 1 / 0
Регистрация: 22.03.2016
Сообщений: 7
23.03.2016, 16:41  [ТС]     Как локализовать массив заголовков? #8
Вот решение. Разобрался
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
String[] head_arr;
 
    
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ListView ListView = (ListView) findViewById(R.id.listView);
//устанавливаем массив в ListView
 
        ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
                this, R.array.head, android.R.layout.simple_list_item_1);
        ListView.setAdapter(adapter);
 
        head_arr = getResources().getStringArray(R.array.head);
Yandex
Объявления
23.03.2016, 16:41     Как локализовать массив заголовков?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru