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

Программная расстановка большого количества кнопок - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Не могу скрыть клавиатуру http://www.cyberforum.ru/android-dev/thread1801259.html
Использую вот такой код, чтобы скрыть клавиатуру: InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(edtSeach.getWindowToken(), 0); Но она упорно не хочет прятаться. Что не так?
Android Places API for Android Товарищи:) Есть ли у вас пример работы с Places API for Android с autocompletetextview ? (пример с более современной реализацией) Добавлено через 36 секунд Гугл отключили! http://www.cyberforum.ru/android-dev/thread1801207.html
Android Сложности с сертификатом при обновлении приложения
Здравствуйте, вообщем писал приложение еще в Android Studio 1.не помню номер, файл Key файл ключа остался, опубликовал приложение в Google Store. Потом установил Android Studio 2.2 и там дописал приложение, но при обновлении пишет: Добавленные ранее APK-файлы подписаны сертификатами с цифровыми отпечатками Файл Key.jks остался старым еще при студии 1 с чем то, в чем же дело? Добавлено...
Android Retrofit + simpleXml может у кого есть примеры?
Retrofit + simpleXml может у кого есть примеры рабочего кода? Что-то с JSON чего хочешь. А с XML почти ничего нету в инете.
Android Работа с большими данными http://www.cyberforum.ru/android-dev/thread1800993.html
Добрый день. Существуют ситуации, когда нужно подгрузить и распарсить что-то очень большое, ну, например, адреса Москвы. Если поставить парсить напрямую сразу всё, то, как правило, памяти телефона не хватит. Я делаю по частям в разных окнах, после окончания процесса перезапускаю окно, но бывают случаи, когда это слабо помогает, в процессе начинает глючить прогрессбар, затем гаснет экран и тп,...
Android Не выбирается нужная icon Вообщем создал каталоги drawable-mdpi, drawable-hdpi и т.д. Закинул туда рисунки соответсвующих размеров, но все ровно выбирается иконка с главного drawable. Density экрана 430dpi, то есть должен выбираться drawable-xhdpi, но выбирается иконка из главного drawable. В чем подвох? подробнее

Показать сообщение отдельно
ICaxapI
0 / 0 / 0
Регистрация: 11.08.2016
Сообщений: 20

Программная расстановка большого количества кнопок - Android

31.08.2016, 23:37. Просмотров 164. Ответов 2
Метки (Все метки)

Здравствуйте, переношу своё сетевое приложение на java "Морской бой" и столкнулся с небольшой проблемой, я совсем не понял, как можно программно расставлять кнопки, прошу помощи у более умных людей .
А вся проблема в том, что в десктопной версии я полностью сам расставляю кнопки, в коде сама вычисляется позиция, куда нужно поставить кнопку, а вот как каким образом расставить элементы на андройде я не знаю
+ даже если есть какой-то способ расставить точно по координатам - то теряется поддержка разных разрешений.
Вот Java код, который я использую в десктоп версии, помогите перенести пожалуйста (или хотя-бы просто задайте направление куда копать и что изучать)
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
 private void paintCells(int xLoc, int yLoc, int xSiz, int ySiz, boolean rival){
        int xLocM = xLoc;
        int defY = yLoc;
        byte i = 0;
        while (i < 100){
            int x = i / 10; //это находит первую цифру двухзначного числа (прим из числа 82 получается 8)
            int y = i - (Math.round(i/10)*10); //это находит вторую цифру двухзначного числа (прим из числа 82 получается 2)
            if (!rival) {
                MyCells cell = new MyCells(); //новый объект 
                myCellsList[x][y] = cell;        // записываем его в массив
                cell.x = (byte)  x;                 //записываем в ячейку её координаты
                cell.y = (byte)  y;
                cell.index = i;                       
                cell.setLocation(xLocM, yLoc); //ставим кнопку на координаты xLocM, yLoc
                cell.setSize(xSiz, ySiz);          // ставим заданный размер в пикселях
                cell.setBorder(null);               // убираю обводку
                add(cell);                             // добавляю на панель
            }
            if (rival){
                RivalCells cell = new RivalCells();  //точно такой-же код, но записываем ссылки на ячейки в другой массив
                rivalCellsList[x][y] = cell;
                cell.x = (byte)  x;
                cell.y = (byte)  y;
                cell.index = i;
                cell.setLocation(xLocM, yLoc);
                cell.setSize(xSiz, ySiz);
                cell.setBorder(null);
                add(cell);
            }
            i++;
            if (xGrid < 9){                                            //если ячейка по вертикали не 9 (с 0), то добавляем к x координате 
                xLocM = xLoc + (xSiz * (xGrid + 1));         //размер ячейки, и инкрементируем колличество уже нарисованных 
                xGrid++;                                               //по горизонтали
            } else{
                yLoc = yLoc + ySiz;                                 //иначе инкрементируем y координату, и ставим вертикальный
                xGrid = 0;                                              //счётчик в 0
                xLocM = xLoc;
            }
        }
        JPanel visual = new JPanel();                                                    //Создаём панель для буковок
        visual.setSize(xSiz * 10 + 30, ySiz * 10 + 30);
        visual.setLocation(xLoc - 20, defY - 20);                                      //тут везде украшательства
        visual.setBorder(BorderFactory.createEtchedBorder());
        visual.setVisible(true);
        visual.setLayout(null);
        paintLine("АБВГДЕЁЖЗИ" , visual, xSiz * 10 + 40 , true);             //рисует линию из заданных букв, в
        paintLine("0123456789" , visual, xSiz * 10 + 40 , false);              // заданном направлении
        add(visual);
    }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 05:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru