问题描述
我有一个愚蠢的问题,请按照下面的图片进行操作
I have silly problem please follow the below pics
当我点击输入电子邮件时,它看到如下图,
And when i clicked on Enter Email it saw like below pic,
尽管使用 android:windowSoftInputMode="adjustPan" android Lollipop 主题和工具栏,问题还是出现了,
Now the problems are coming inspite of using android:windowSoftInputMode="adjustPan" android Lollipop theme and toolbar,
- 图片变小了.
- 电子邮件编辑文本应该显示在键盘上方,但它没有.
提出一些解决方案.
推荐答案
首先确保您在 xml 布局中提供了 ScrollView.
First of all make sure you have provided a ScrollView in your xml layout.
<?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > ... ... </ScrollView>
然后在你的 activity 中确保你正在做这样的事情(这段代码只是为了演示在哪里使用 getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);代码>):
Then inside your activity make sure you are doing something like this(this code is just to demonstrate where to use getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);) :
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.temp); getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN); final EditText time = (EditText)findViewById(R.id.timeET); time.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { time.requestLayout(); MyActivity.this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_UNSPECIFIED); return false; } }); final EditText date = (EditText)findViewById(R.id.dateET); date.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { date.requestLayout(); MyActivity.this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_UNSPECIFIED); return false; } }); }