这是我的带有软输入模式和没有软输入模式的布局。

但是主要的问题是,当我从倒数第二个编辑文本中单击“下一步”时,我想显示这两个按钮以及使用软输入模式的最后一个编辑文本。请帮忙

我的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"
     android:background="@drawable/scroll_bg" >

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="521dp"
    android:layout_marginBottom="60dp"
    android:background="@drawable/bg" >

    <com.deemtech.widgets.MenuLayout
        android:id="@+id/menuTitle"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

    <TextView
        android:id="@+id/txtCustomerDetails"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="140dp"
        android:gravity="center"
        android:text="@string/customer_details"
        android:textColor="#ffffff"
        android:textSize="12sp" />

    <EditText
        android:id="@+id/editNameCustomerDetails"
        style="@style/EditText"
        android:layout_below="@+id/txtCustomerDetails"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="12dp"
        android:ems="10"
        android:hint="NAME"
        android:inputType="text" />

    <RelativeLayout
        android:id="@+id/innerLayout"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginLeft="25dp"
        android:layout_marginRight="25dp"
        android:layout_marginTop="190dp"
        android:background="@drawable/bg_create_account1x"
        android:gravity="center"
        android:paddingBottom="5dp"
        android:paddingLeft="25dp"
        android:paddingRight="25dp"
        android:paddingTop="8dp" >

        <EditText
            android:id="@+id/editEmailCustomerDetails"
            style="@style/EditText"
            android:layout_alignLeft="@+id/editPhoneCutomerDetails"
            android:layout_alignParentTop="true"
            android:layout_marginTop="52dp"
            android:ems="10"
            android:hint="EMAIL ADDRESS"
            android:inputType="textEmailAddress" />

        <EditText
            android:id="@+id/editPhoneCutomerDetails"
            style="@style/EditText"
            android:layout_below="@+id/editEmailCustomerDetails"
            android:layout_marginTop="8dp"
            android:ems="10"
            android:hint="CONTACT NUMBER"
            android:maxLength="12"
            android:inputType="phone" />

        <!--
        <EditText
            android:id="@+id/editAdditionalInfo"
            android:layout_width="150dp"
            android:layout_height="50dp"
            android:layout_alignLeft="@+id/editPhoneCutomerDetails"
            android:layout_alignRight="@+id/editPhoneCutomerDetails"
            android:layout_below="@+id/editPhoneCutomerDetails"
            android:layout_marginBottom="60dp"
            android:layout_marginTop="10dp"
            android:background="@drawable/message_additional_box1x"
            android:ems="10"
            android:hint="ADDITIONAL INFO"
            android:inputType="text"
            android:padding="10dp"
            >

            <requestFocus />
        </EditText>
        -->

        <EditText
            android:id="@+id/editAdditionalInfo"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@+id/editPhoneCutomerDetails"
            android:layout_alignParentBottom="true"
            android:layout_alignRight="@+id/editPhoneCutomerDetails"
            android:layout_below="@+id/editPhoneCutomerDetails"
            android:layout_marginBottom="60dp"
            android:layout_marginTop="8dp"
            android:hint="ADDITIONAL INFO"
            android:background="@drawable/message_additional_box1x"
            android:ems="10"
            android:singleLine="true"
            android:gravity="top"
            android:lines="3"
            android:padding="10dp"
            android:width="150dp" >

            <requestFocus />
        </EditText>
    </RelativeLayout>

    <Button
        android:id="@+id/btnBackCustomerDetails"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="448dp"
        android:layout_toLeftOf="@+id/btnSubmitCustomerDetails"
        android:background="@drawable/btn_back"
        android:contentDescription="@string/app_name" />

    <Button
        android:id="@+id/btnSubmitCustomerDetails"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignRight="@+id/editNameCustomerDetails"
        android:layout_marginTop="448dp"
        android:background="@drawable/btn_submit"
        android:contentDescription="@string/app_name" />
</RelativeLayout>

 </ScrollView>

最佳答案

在您的情况下,您不能简单地“调整大小”窗口。同样,因为您只想在单击最后一个编辑文本时显示按钮。

因此,您可以尝试这种方法(不是真正建议的方法),但可以满足您的情况:

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_mainf);


    findViewById(R.id.editAdditionalInfo).setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            Toast.makeText(sampleMediaPlayer.this, "text", 700).show();
            findViewById(R.id.btnBackCustomerDetails).requestFocusFromTouch();
            findViewById(R.id.editAdditionalInfo).requestFocusFromTouch();
        }
    });
}

关于android - 单击编辑文本时如何向上滚动布局,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14619222/

10-09 07:55