1

まあ友達..

私はデザインを持っています:
ここに画像の説明を入力
キーボードが表示されたときにメインスクロールが非常に必要です.それをしないとボタンが見えません.問題は、キーボードがアクティブな状態で Edittext 内を移動しようとしたときです..私はこれを試しました:

android:scrollbars="vertical"

この:

setMovementMethod(new ScrollingMovementMethod());

しかし、まだこれを解決していません グラックスアドバンス!

4

2 に答える 2

0

これを試してください:

レイアウトは次の例のようになります。

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" >

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

    <EditText
        android:id="@+id/edittext"
        android:layout_width="200dp"
        android:layout_height="500dp"
        android:text="some long text"

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button" />
</LinearLayout>

</ScrollView>

そしてあなたのJavaでこれを試してください:

EditText edit = (EditText)findViewById(R.id.edittext);
edit.setOnTouchListener(new OnTouchListener() {
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        if (v.getId() == R.id.edittext) {
            v.getParent().requestDisallowInterceptTouchEvent(true);
            switch (event.getAction() & MotionEvent.ACTION_MASK) {
            case MotionEvent.ACTION_UP:
                v.getParent().requestDisallowInterceptTouchEvent(false);
                break;
            }
        }
        return false;
    }
});

役に立つかもしれません。

于 2013-10-21T21:27:51.540 に答える