2015-06-05 3 views
1

Я стараюсь сделать программный вид с произвольным видом (размером 3000 пикселей * 750 пикселей).Включение пользовательского вида в ScrollView (или HorizontalScrollView) программно (без прокрутки)

Информация на мой пользовательский взгляд: он просто расширяет вид, и есть только некоторые чертежи в OnDraw(), ничего особенного.

Чтобы собрать всю информацию для чертежа, этот CustomView следует добавить, как только AsyncTask загрузит всю информацию.

Моя проблема заключается в том, что когда я добавлял свое представление программно в любую ViewGroup, содержащую ScrollView или HorizontalScrollview, прокрутки нет.

Я попробовал несколько макетов, например, этот:

<?xml version="1.0" encoding="utf-8"?> 
<HorizontalScrollView  xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:fillViewport="true" 
    android:layout_marginTop="50dp" > 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="horizontal" 
     android:id="@+id/linLayoutScroll"> 

    </LinearLayout> 
</HorizontalScrollView> 

И сразу AsynTask закончена:

LinearLayout linLayout = (LinearLayout)rootView.findViewById(R.id.linLayoutScroll); 
    linLayout.addView(new MyChartView(getActivity(), chartBuilder, ChartBuilder.DATASET.SPEED));*/ 

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

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

ответ

1

Ошибка была внутри моего customView. Я не задавал ширину и высоту моего представления (setWidth(), setHeight()). Таким образом, представление не знало, насколько оно велико. :-(

Извините, что тратишь свое время!

Смежные вопросы