【问题标题】:Android keyboard and activity backgroundAndroid 键盘和活动背景
【发布时间】:2017-05-01 13:13:02
【问题描述】:

我有两个活动。

在第一个中,我有一个像这样的button

button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        startActivity(new Intent(this, Activity2.class));
    }
});

然后在我的SecondActivity 中,我有一个EditText

但是当我点击EditText 时,键盘显示良好,但我可以在键盘滑动动画期间看到FirstActivity 的视图。这正常吗?我不这么认为..所以我试图了解我做错了什么..

Manifest.xml

<activity
    android:name=".activities.Activity1"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.Translucent.NoTitleBar"/>

<activity
    android:name=".activities.Activity2"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.Translucent.NoTitleBar"
    android:windowSoftInputMode="adjustResize"/>

提前致谢!

【问题讨论】:

  • 发布你的menifest.xml
  • 我刚刚发布了! @CharukaSilva

标签: android android-activity android-edittext keyboard


【解决方案1】:

如果一个活动被暂停或停止,系统可以通过要求它完成或简单地终止其进程来从内存中删除该活动。当它再次显示给用户时,必须完全重新启动并恢复到之前的状态。

onDestroy() 是您在 activity 被销毁之前收到的最后一个电话。这可能是因为 Activity 正在完成(有人在其上调用 finish(),或者因为系统暂时销毁该 Activity 实例以节省空间。您可以使用 isFinishing() 方法区分这两种情况。

对于您的问题,您有一个android:theme="@android:style/Theme.Translucent.NoTitleBar",它显示透明活动,这是在后面显示您之前的活动的原因,因为背景是透明的并且您还没有完成之前的活动,所以您可以看到它。如果你完成它,我怀疑如果你没有任何返回状态,你可能也会看到移动屏幕

我不知道你的要求,取决于你,

  1. 更改透明主题
  2. 从返回状态中删除以前的活动
  3. 选择 1 和 2

【讨论】:

  • 非常感谢,我不知道主题标签!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-16
  • 2019-12-17
  • 2018-06-02
  • 2011-08-31
  • 1970-01-01
相关资源
最近更新 更多