【发布时间】:2019-06-29 22:19:09
【问题描述】:
我在我的应用程序中使用 adjustPan 时遇到了一些问题,因为它无法正常工作。其他一些用户也遇到了这个问题,所以我认为分享这个问题很重要(Layout doesn't move up enough when clicking EditText)。
注意:我使用的是 Android Studio并且我使用的是“Instant App”,因此文件的位置会有所不同。
当我在布局中使用adjustPan 时,我的活动没有向上移动到EditText 出现在软键盘上方的位置(详见图片)。无论您在 Manifest 文件或 Java 文件中使用它,仍然会出现相同的结果。
不仅如此,最奇怪的是状态栏变得透明,而应该在通知图标后面的深蓝色栏向下稍微向下 (详见图片)。
我已尝试多次尝试解决此问题,例如使用adjustResize 和setOnTouchListener,但我收到的这两个答案都没有解决此问题。
我仍然无法弄清楚这个问题的原因,所以任何关于如何发现这个问题发生原因的答案或 cmet 也很好。
这是我的一些代码:
清单文件:
<activity
android:name=".Input_Activity"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustPan" />
Java 文件:
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.WindowManager;
public class Input_Activity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_input__activity);
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
}
}
XML 文件:
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".Input_Activity">
<EditText
android:layout_width="214dp"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"
android:inputType="number|numberDecimal"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.585"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.725" />
所有反馈将不胜感激。
【问题讨论】:
标签: android android-edittext android-statusbar window-soft-input-mode adjustpan