Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Anren
1 / 1 / 0
Регистрация: 22.03.2016
Сообщений: 7
1

Как локализовать массив заголовков?

23.03.2016, 08:32. Просмотров 231. Ответов 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;
                }
            }
                                        }
        );
 
    }
    
 
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.03.2016, 08:32
Ответы с готовыми решениями:

Как локализовать папку assets?
Привет форум! Кто ни будь может объяснить как локализовать папку assets? ...

Могу ли я скачать приложение с плэй маркета, локализовать его и выложить его в маркет от себя
Доброго дня! Не знал как назвать тему. Я в этом мало понимаю. Опишу свою...

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

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

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

7
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
23.03.2016, 12:04 2
Цитата Сообщение от Anren Посмотреть сообщение
Через Stringовые ресурсы не получается.
не может такого быть. Как Вы это делали?
0
Pablito
2767 / 2198 / 744
Регистрация: 12.05.2014
Сообщений: 7,711
Завершенные тесты: 1
23.03.2016, 12:05 3
Цитата Сообщение от Anren Посмотреть сообщение
Нужно его перевести на английский язык.
так переведи, в чем проблема конкретно? ты не знаешь как переводятся слова?
Цитата Сообщение от Anren Посмотреть сообщение
Есть массив заголовков на русском языке созданный программно в java.
их надо положить в ресурсы, даже при создании ресурсов среда разработки предлагает сделать несколько разных ресурсов для разных локалей
Цитата Сообщение от Anren Посмотреть сообщение
Через Stringовые ресурсы не получается
это не причина, например у меня - получается
0
Anren
1 / 1 / 0
Регистрация: 22.03.2016
Сообщений: 7
23.03.2016, 14:07  [ТС] 4
Ложил заголовки в String файлы. Вставлял в массив ссылки - среда пишет пишет, что не ресурсы типа int, а не string. Пробовал содать стринг с итемами и сразу в адаптер вставить - то же не работает, у адаптера какая-то ошибка. Вопрос в том как вложить в стринг, а затем реализовать. Подчеркиваю - я в программировании новичок
0
Pablito
2767 / 2198 / 744
Регистрация: 12.05.2014
Сообщений: 7,711
Завершенные тесты: 1
23.03.2016, 14:19 5
Не удается конвертировать int в String
0
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);
Подскажите, что не так делаю
0
Pablito
2767 / 2198 / 744
Регистрация: 12.05.2014
Сообщений: 7,711
Завершенные тесты: 1
23.03.2016, 15:52 7
Цитата Сообщение от Anren Посмотреть сообщение
Так не работает - сразу ошибка.
Попробовал так - то же самое
тут принято показывать логи ошибок

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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