Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
SakaD
9 / 9 / 5
Регистрация: 23.05.2011
Сообщений: 78
1

Динамическое создание кнопок и их кривая отрисовка

06.09.2013, 14:03. Просмотров 1003. Ответов 1
Метки нет (Все метки)

Всем доброго времени суток.

Имеется такая процедура(хотя в данном случае правильнее функция).
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
private void SetButtons()
    {
        int RowCount,ButtonsCount,Left = 0,Top,
            RowStep,ColStep;                
        RowStep = buttonW + buttonI;
        ColStep = buttonH + buttonI;
        RowCount = aWidth / RowStep;        
        
        ButtonsCount = RowCount * (aHeight / ColStep);
        
        Top = -ColStep;
            View view = fOwner.findViewById(R.id.activity_main);
        RelativeLayout LayOut = (RelativeLayout)view;                   
 
        for (int i = 0; i < ButtonsCount; i++)
        {   
            if (i % RowCount == 0)  {   Left = 0 ; Top += ColStep;  }
            
            Button mButton = new Button(fOwner);
            mButton.setText(Integer.toString(i));
            LayoutParams Lp = new LayoutParams(buttonW,buttonH);
            Lp.setMargins(Left, Top, buttonW, buttonH);
            mButton.setLayoutParams(Lp);
            LayOut.addView(mButton);    
            Left += RowStep;
        }
    }
/* дабы не возникало лишних вопросов 
 fOwner  - Activity
 aWidth,aHeight = 720*1280 (пока подтянул из fOwner.getWindowManager().getDefaultDisplay()."GetW+H")
 buttonW,buttonH = 150
 buttonI = 0;
*/
и сама Activity

XML
1
2
3
4
5
6
7
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"    
    tools:context=".MainActivity" >
</RelativeLayout>
Смысл ф-ции в том, что должно на экране появиться много кнопок, не более. Но засада в том, что часть из них странно отрисовуются(имеется скрин с железки).
Может кто подскажет где и в чем я прокосячил?

Заранее спасибо)
0
Миниатюры
Динамическое создание кнопок и их кривая отрисовка  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.09.2013, 14:03
Ответы с готовыми решениями:

Динамическое создание кнопок на Mono Android
Доброго времени суток. Разработку под Андроид начал изучать совсем недавно....

Динамическое создание кнопок в цикле (Android)
создаю кнопки по циклу void show(){ public LinearLayout show; ...

Создание кнопок
У меня в программе выпадает число рандомно от 1 до 10. Как мне автоматически...

Динамическое создание View
Есть шаблон: &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;LinearLayout...

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

1
SakaD
9 / 9 / 5
Регистрация: 23.05.2011
Сообщений: 78
06.09.2013, 17:10  [ТС] 2
Нашел проблему, правда хз с чем она связана...

Java
1
Lp.setMargins(Left, Top, buttonW, buttonH);
заменяем на

Java
1
2
Lp.leftMargin = Left;
Lp.topMargin = Top;
и все "гудово" работает)
0
Миниатюры
Динамическое создание кнопок и их кривая отрисовка  
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.09.2013, 17:10

Динамическое создание объекта
Всем привет! Заранее извиняюсь за глупый вопрос. Подскажите, пожалуйста, кто...

Динамическое создание интерфейса
Уважаемые форумчане, не подскажите как можно реализовать создание интерфейса в...

Динамическое создание кнопки
Добрый день, искал и перебровывал много способов, но не один не помог( Нужно...


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

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

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