Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Java Мобильная разработка (Android)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.11.2018, 20:47   #1
AntonCH
Пользователь
 
Регистрация: 28.11.2017
Сообщений: 58
По умолчанию Как заставить работать ConstraintSet?

Из справочника бд вытаскиваю инфу по блюдам и в цикле создаю view
Код:
ArrayList<Food> Foods = dbHelper.getFoods(spinner.getSelectedItemPosition());
        DynViewCount = 6 * Foods.size();
        int indexView = R.id.textView2;
        Map<Integer, Integer> FoodDate = dbHelper.getFoodDate();

        for (Food food : Foods){
            TextView Name = new TextView(this);
            TextView Kkal = new TextView(this);
            TextView Ing = new TextView(this);
            TextView PFC = new TextView(this);
            ImageView Photo = new ImageView(this);
            EditText Eaten = new EditText(this);
            ConstraintLayout.LayoutParams CL = new ConstraintLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);

            Name.setText(food.getName());
            Name.setTag(food.getId());
            Name.setId(index++);
            CL.topToBottom = indexView;
            CL.topMargin = 20;
            CL.leftMargin = 20;
            CL.leftToLeft = R.id.activityFood;
            mainL.addView(Name, CL);


            Kkal.setText(String.valueOf(food.getKkal()));
            Kkal.setId(index++);
            CL.topToBottom = Name.getId();
            mainL.addView(Kkal, CL);


            Ing.setText(food.getIng());
            Ing.setId(index++);
            CL.topToBottom = Kkal.getId();
            mainL.addView(Ing, CL);


            PFC.setText(food.getPFC());
            PFC.setId(index++);
            CL.topToBottom = Ing.getId();
            mainL.addView(PFC, CL);


            Eaten.setId(index++);
            CL.topToBottom = PFC.getId();
            if(FoodDate.containsKey(food.getId()))
                Eaten.setText(FoodDate.get(food.getId()).toString());
            mainL.addView(Eaten, CL);
            indexView = Eaten.getId();


            Photo.setImageBitmap(food.getPhoto());
            Photo.setId(index++);
            CL.topToTop = Name.getId();
            CL.leftToRight = Eaten.getId();
            CL.topMargin = 0;
            mainL.addView(Photo, CL);

            ConstraintSet set = new ConstraintSet();
            set.clone(mainL);
            set.constrainHeight(Name.getId(), ConstraintSet.WRAP_CONTENT);
            set.constrainWidth(Name.getId(), ConstraintSet.WRAP_CONTENT);
            set.constrainHeight(Kkal.getId(), ConstraintSet.WRAP_CONTENT);
            set.constrainWidth(Kkal.getId(), ConstraintSet.WRAP_CONTENT);
            set.connect(Name.getId(), ConstraintSet.TOP, indexView, ConstraintSet.BOTTOM, 20);
            set.connect(Name.getId(), ConstraintSet.LEFT, R.id.activityFood, ConstraintSet.LEFT, 20);
            set.connect(Kkal.getId(), ConstraintSet.TOP, Name.getId(), ConstraintSet.BOTTOM, 20);
            set.connect(Kkal.getId(), ConstraintSet.LEFT, R.id.activityFood, ConstraintSet.LEFT, 20);
            set.connect(Ing.getId(), ConstraintSet.TOP, Kkal.getId(), ConstraintSet.BOTTOM, 20);
            set.connect(Ing.getId(), ConstraintSet.LEFT, R.id.activityFood, ConstraintSet.LEFT, 20);
            set.connect(PFC.getId(), ConstraintSet.TOP, Ing.getId(), ConstraintSet.BOTTOM, 20);
            set.connect(PFC.getId(), ConstraintSet.LEFT, R.id.activityFood, ConstraintSet.LEFT, 20);
            set.connect(Eaten.getId(), ConstraintSet.TOP, PFC.getId(), ConstraintSet.BOTTOM, 20);
            set.connect(Eaten.getId(), ConstraintSet.LEFT, R.id.activityFood, ConstraintSet.LEFT, 20);
            set.connect(Photo.getId(), ConstraintSet.TOP, Name.getId(), ConstraintSet.TOP, 20);
            set.connect(Photo.getId(), ConstraintSet.LEFT, Eaten.getId(), ConstraintSet.RIGHT, 20);

            set.applyTo(mainL);


        }
Однако все равно все view кучкуются в верхнем левом углу. Как сделать по уму?
AntonCH вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как заставить работать GetModuleFileName? DwapDaBase Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 02.09.2017 11:19
Как заставить работать скрипт x1233 JavaScript, Ajax 8 05.12.2010 10:41
Как заставить работать CheckBox? ridmal Microsoft Office Word 1 21.05.2009 09:47
Как заставить работать NFS 2 SE? Манжосов Денис :) Gamedev - cоздание игр: Unity, OpenGL, DirectX 6 02.11.2008 16:35
Как заставить работать php? yourself Помощь студентам 9 20.05.2008 08:08