Как создать Scrollview программно? - PullRequest
11 голосов
/ 27 марта 2012

У меня есть одна таблица "TABLE_SUBJECT", которая содержит несколько предметов. Мне нужно создать
один горизонтальный вид прокрутки с темой.

Как мне программно создать ScrollView с элементами базы данных? Если я введу 1 предмет, он появится в виде прокрутки в виде кнопки. Возможно ли это?

Ответы [ 4 ]

22 голосов
/ 27 марта 2012

вы можете создать его следующим образом:

ScrollView scroll = new ScrollView(context);
scroll.setBackgroundColor(android.R.color.transparent);
scroll.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,
                                             LayoutParams.FILL_PARENT));
scroll.addView(yourTableView);
4 голосов
/ 19 июля 2016

если у вас сначала много элементов, вам нужно свернуть их и добавить в представление прокрутки;например, мне нужно много текстовое представление внутри scrollview, поэтому вам нужно создать ScrollView-> LinearLayout-> Many textview

                ScrollView scrollView = new ScrollView(context);
                scrollView.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));

                TextView textView = new TextView(context);
                textView.setText("my text");

                LinearLayout linearLayout = new LinearLayout(context);
                linearLayout.setOrientation(LinearLayout.VERTICAL);
                linearLayout.setGravity(Gravity.RIGHT);
                linearLayout.addView(textView);
                scrollView.addView(linearLayout);
3 голосов
/ 27 марта 2012

это может вам помочь.

    HorizontalScrollView hsrll = (HorizontalScrollView)findViewById(R.id.hrsll);

    b = new Button(this);

    for (int i = 0; i < 5; i++) {

        b.setWidth(LayoutParams.WRAP_CONTENT);
        b.setHeight(LayoutParams.WRAP_CONTENT);

        b.setText("b"+i);
        b.setId(100+i);

        hsrll.addView(b);
    }

вместо цикла for просто измените код по своему усмотрению (нет записей в дБ).но это код для создания кнопок динамически.

2 голосов
/ 27 марта 2012

Я делал это так:

  • Создание XML с LinearLayout внутри ScrollView
  • Создать XML как элемент в ScrollView
  • В действии установите основной контент как XML с ScrollView
  • Перебрать все элементы таблицы с добавлением нового вида в основной вид формы LinearLayout

У меня отлично работает.

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