如何在Activity中创建叠加EditText

时间:2013-04-25 03:08:40

标签: android overlay

像这样:

a link

请告诉我。 最好能够提供演示。

1 个答案:

答案 0 :(得分:2)

欢迎来到Stackoverflow。

它不是对话。 活动作为对话

enter image description here

public class diaActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        super.onCreate(savedInstanceState);
        setContentView(R.layout.test_dialog);
    }
}

test_dialog.xml

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

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="42dp"
        android:orientation="horizontal"
        android:weightSum="3" >

        <Button
            android:id="@+id/button1"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Cancle" />

        <View
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1" />

        <Button
            android:id="@+id/button2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="OK" />
    </LinearLayout>

    <EditText
        android:id="@+id/editText1"
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:ems="10"
        android:inputType="textPostalAddress" >

        <requestFocus />
    </EditText>

</LinearLayout>

在android清单文件中添加您的活动主题:

<activity
            android:name="diaActivity"
            android:theme="@android:style/Theme.Holo.Dialog" >
        </activity>

for&lt; 11 Api你必须使用

<activity
            android:name="diaActivity"
            android:theme="@android:style/Theme.Dialog" >
        </activity>

编辑:

关闭键盘并退出使用此代码:

public void onBackPressed() {

InputMethodManager imm = (InputMethodManager)getSystemService(
      Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);

finish();

}