Android: верхний экран исчезает при прокрутке - PullRequest
1 голос
/ 26 марта 2012

Я пытаюсь создать приложение для Android.Это приложение имеет только один экран.На этом экране необходимо прокрутить вниз.

Теперь у меня есть этот код:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scroll"
android:layout_width="fill_parent"
android:layout_height="wrap_content">

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

    <EditText
        android:id="@+id/name1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <ImageButton
        android:id="@+id/calculate"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/button" />

    <FrameLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal|center_vertical" >

        <ImageView
            android:id="@+id/image"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/image" />

        <CheckedTextView
            android:id="@+id/score"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    </FrameLayout>

    <CheckedTextView
        android:id="@+id/quote"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</LinearLayout>
</ScrollView>

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

Кто-нибудь, кто может дать мне решение?

Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 26 марта 2012

Попробуйте

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

    <EditText
       android:id="@+id/name1"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content" />

    <ImageButton
       android:id="@+id/calculate"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:src="@drawable/button" />

    <FrameLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal|center_vertical" >

       <ImageView
            android:id="@+id/image"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/image" />

       <CheckedTextView
           android:id="@+id/score"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:scrollbars = "vertical"
           android:maxLines = "5"
       />
     </FrameLayout>

    <CheckedTextView
        android:id="@+id/quote"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:scrollbars = "vertical"
        android:maxLines = "5"
    />

И setMovementMethod для TextFields в Activity:

.....
 ((CheckedTextView)findViewById(R.id.ID)).setMovementMethod(new ScrollingMovementMethod());
0 голосов
/ 26 марта 2012

Я использую следующее, что дает мне постоянную область заголовка, независимо от того, сколько текста / данных в ScrollView. Вы можете заменить содержимое внешнего LinearLayout своим EditText? Надеюсь это поможет. У меня все равно работает!

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical" android:layout_width="fill_parent"
  android:layout_height="fill_parent" android:background="@color/bto_light_green">
 <LinearLayout android:orientation="horizontal" android:id="@+id/linear1"
    android:background="@color/bto_dark_green" android:layout_width="fill_parent"
    android:gravity="center_vertical" android:layout_height="wrap_content"
    android:paddingTop="4dip">
    <Button android:id="@+id/helpBackButton" android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:text="Back" />
    <TextView android:id="@+id/Info1" android:textSize="14dip"
        android:paddingLeft="3dip" android:textColor="@color/white"
        android:textStyle="bold" android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:layout_weight="1.0"
        android:text="Help" />
 </LinearLayout>
 <ScrollView android:id="@+id/ScrollView01"
    android:layout_width="wrap_content" android:layout_below="@+id/linear1"
    android:fillViewport="true" android:layout_height="fill_parent">
    <LinearLayout android:orientation="vertical"
        android:background="@color/bto_light_green"   android:layout_width="fill_parent"
        android:layout_height="wrap_content">
        <TextView android:id="@+id/helptTitle1" android:textSize="16dip"
            android:paddingLeft="3dip" android:textColor="@color/bto_dark_green"
            android:textStyle="bold" android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:layout_weight="1.0"
            android:text="First things first..." />
        <TextView android:id="@+id/Help1" android:textSize="14dip"
            android:paddingLeft="3dip" android:textColor="@color/black"
            android:textStyle="bold" android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:layout_weight="1.0"
            android:text="Help coming soon, be patient..." />
        <TextView android:id="@+id/helptTitle2" android:textSize="16dip"
            android:paddingLeft="3dip" android:textColor="@color/bto_dark_green"
            android:textStyle="bold" android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:layout_weight="1.0"
            android:text="Other settings..." />
        <TextView android:id="@+id/Help2" android:textSize="14dip"
            android:paddingLeft="3dip" android:textColor="@color/black"
            android:textStyle="bold" android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:layout_weight="1.0"
            android:text="Help coming soon, be patient..." />
    </LinearLayout>
  </ScrollView>
</LinearLayout>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...