ScrollView - как прокручивать вниз при разработке макета в Eclipse? - программирование
Подтвердить что ты не робот

ScrollView - как прокручивать вниз при разработке макета в Eclipse?

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

На экране XML Design отображается фиксированный экран размером 3,7 дюйма (или более). Что делать, если я хочу добавить больше объектов? Как прокручивать вниз при проектировании в Eclipse?

4b9b3361

Ответ 1

Вы можете изменить размер экрана на пользовательский. попробуй это.. нажмите на текущую кнопку экрана и выберите "Добавить пользовательский", затем прокрутите вниз и выберите "Пользовательский" и нажмите "Создать" в правом верхнем углу. Затем напишите свой собственный размер для экрана и нажмите "ОК", затем снова "ОК".. После этого снова нажмите на текущую кнопку экрана и выберите свой собственный размер. Сделано! Надежда помогла!

Убедитесь, что эти кнопки выбраны. enter image description here

Ответ 2

Попробуйте временно установить android:scrollY на ScrollView. Я этого не пробовал, но теоретически он должен работать. Просто не забудьте удалить атрибут при публикации приложения.

Ответ 3

В Android API 19 это решение изменилось. Вот что сработало для меня.

Перейдите в Диспетчер виртуальных устройств Android (в Eclipse это в окне > Android Virtual Device Manager), как только перейдите на вкладку "Определения устройств" и создайте новое устройство. Назовите его что-то запоминающееся, как "Long Scroller".

The Create New Device screen

На экране "Редактировать/Создать устройство" установите вертикальные размеры до тех пор, пока вы думаете, что ваш вид прокрутки (7000 пикселей более чем достаточно для моих целей). Вы также можете настроить его позже.

Перезапустите Eclipse, откройте свой длинный макет прокрутки, и ваш длинный скроллер появится среди ваших макетов предварительного просмотра.

Ответ 4

Попробуйте настроить внутренний макет на фиксированную высоту. Таким образом, ваш код должен выглядеть как

<ScrollView
     android:layout_width="fill_parent"
     android:layout_height="fill_parent">
<RelativeLayout
     android:layout_height="900dp"
>
</ReleativeLayout>
</ScrollView>

Это должно работать

Ответ 5

Добавьте android:scrollY="300dp" в свой макет. Tt будет прокручивать содержимое 300 дп.

перед добавлением андроида: scrollY = "300dp" в макет

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent" tools:context="com.javamad.user_profile"
>

вы не видите места для дизайна

После добавления андроида: scrollY = "300dp" в макет

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent" tools:context="com.javamad.user_profile"
    android:scrollY="300dp"
>

вы видите пространство для дизайна.

Ответ 6

Добавьте что-то вроде атрибута android:layout_marginTop="-300dp" в непосредственный дочерний элемент ScrollView.

Ответ 7

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
       xmlns:tools="http://schemas.android.com/tools"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:paddingBottom="@dimen/activity_vertical_margin"
       android:paddingLeft="@dimen/activity_horizontal_margin"
       android:paddingRight="@dimen/activity_horizontal_margin"
       android:paddingTop="@dimen/activity_vertical_margin"
       tools:context=".AdminControlPanel" 
       android:scrollY="200dp">

этот андроид: scrollY делает ваш проекционный экран длиннее в направлении Y... добавьте свои компоненты вниз

Ответ 8

Я обычно использую отрицательный запас. Он работает в режиме просмотра прокрутки как внутри элемента.

Ответ 9

Это было мое решение: я подклассифицировал ScrollView, чтобы взять параметр scrollY, который используется только тогда, когда isInEditMode().

public class MyScollView extends ScrollView {

    private int scrollY = 0;

    private void init(Context context, AttributeSet attrs) {
        TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.MyScrollView);
        scrollY = a.getInt(R.styleable.MyScrollView_scrollY, 0);
        a.recycle();
    }

    public MyScollView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
        init(context, attrs);
    }

    public MyScollView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init(context, attrs);
    }

    public MyScollView(Context context) {
        super(context);
    }

    @Override
    public void computeScroll() {
        if (isInEditMode()) {
            scrollTo(0, scrollY);
        }
    }

}

Это входит в ваш файл attrs.xml

<declare-styleable name="MyScrollView">
    <attr name="scrollY" format="integer"/>
</declare-styleable>