Экранная клавиатура прикрывает EditText на скин QVGA800 (разрешение) в Android 1.5 - PullRequest
0 голосов
/ 26 июля 2010

В Android 1.5 SDK, со скином QVGA800 (разрешение), я добавил 8 EditText в LinearLayout. При нажатии 8-го поля EditText на экране появляется. Тем не менее, макет не перемещается достаточно вверх, я имею в виду, он перемещается вверх, однако он по-прежнему охватывает поле EditText, которое вводится. Как это решить?

Основной класс:

package com.i;

import android.app.Activity;
import android.os.Bundle;
import android.widget.EditText;

public class myClass extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        EditText txt1=(EditText)findViewById(R.id.txt1);
        EditText txt2=(EditText)findViewById(R.id.txt2);
        EditText txt3=(EditText)findViewById(R.id.txt3);
        EditText txt4=(EditText)findViewById(R.id.txt4);
        EditText txt5=(EditText)findViewById(R.id.txt5);
        EditText txt6=(EditText)findViewById(R.id.txt6);
        EditText txt7=(EditText)findViewById(R.id.txt7);
        EditText txt8=(EditText)findViewById(R.id.txt8);
    }
}

main.xml:

<?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"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
    <EditText android:id="@+id/txt1" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt2" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt3" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt4" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt5" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt6" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt7" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt8" android:layout_width="fill_parent" android:layout_height="wrap_content"/>

</LinearLayout>

Спасибо.

1 Ответ

3 голосов
/ 26 июля 2010

Оберните все это в виде прокрутки. Просто измените свой main.xml на

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
<LinearLayout
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
    <EditText android:id="@+id/txt1" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt2" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt3" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt4" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt5" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt6" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt7" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
    <EditText android:id="@+id/txt8" android:layout_width="fill_parent" android:layout_height="wrap_content"/>

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