Android:tabhost底部导航栏被软键盘顶起问题

在一个带有底部导航栏的页面, 将android:windowSoftInputMode="adjustResize"设置为adjustResize,当我点击评论按钮会弹出输入框和软键盘,但是底部导航栏被顶起到软键盘上面了;如果 android:windowSoftInputMode="adjustPan"时,导航栏是保持在下面了,但是输入框会被软键盘遮挡住一部分,我想知道这个问题该如何解决?如何才能让输入框不被挡住,导航栏又不被顶起去呢

4个回答

解决后的截图![图片说明](https://img-ask.csdn.net/upload/201603/30/1459324112_8848.png)图片说明

图片说明

这是自己定义的输入框还好处理,WebView里的输入框就不能这么处理了.我的问题和你一样,唯一的不同就是一个是控件输入框,一个是webview内容中有输入框

qq_35038151
qq_35038151 老哥,这个问题怎么解决的,找了好久没找到解决方案
一年多之前 回复

说两句吧,方便后人解决这问题。(如下方法解决本人底部tabhost被输入法顶起问题,不保证适应所有人)
1.首先如你所说android:windowSoftInputMode="adjustPan"
2.设置自定义输入框mPopWindowsComment(这是个popupwindow,自定义弹出的输入框,接收输入法的输入信息)的一些属性信息。
mPopWindowsComment.setSoftInputMode(PopupWindow.INPUT_METHOD_NEEDED);
//设置输入框不被输入法遮挡
mPopWindowsComment.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
//位于底部,输入法出现时将其顶起,最终显示在输入法的顶部
mPopWindowsComment.showAtLocation(mMainView.findViewById(R.id.parent), Gravity.BOTTOM, 0, 0);
//点击评论按钮时,启动输入法
mMinputMethodManager = (InputMethodManager) getActivity().getSystemService(getActivity().INPUT_METHOD_SERVICE);
mMinputMethodManager.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);

    以上为项目源码。。。。。
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
软键盘顶起布局(Android)
目前在做一个Android平板的项目,页面上会有很多绘图的任务在执行,这个时候如果弹起软键盘,就会顶起布局,界面很难看,所以想做成那种布局文件固定的 在网上搜了一下,发现大部分是  Android:windowSoftInputMode="adjustPan|stateHidden" 但是在我的软件上并不起作用 然后我把这些属性一个个试了一下 发现使用 adjustNothing起作用了...
android TabHost制作底部导航栏
我做的例子是底部导航栏,底部四个导航,点击不同的导航切换不同的画面。如图所示: 首先主页面是一个且它的id为@android:id/tabhost,里面必须包含一个且id为@android:id/tabcontent,然后布局里有个且id为@android:id/tabs。具体如下:     android:id="@android:id/tabhost"     android
h5手机底部导航栏被虚拟键盘顶起
rn 12rn 34rnrn当使用虚拟键盘的时候,底部导航栏就会被顶起
android 软键盘把界面顶起
android 软键盘把界面顶起的问题 ,研究大半天,希望对大家有帮助。
界面底部控件被软键盘顶起
界面底部控件被软键盘顶起   在 AndroidManifest.xml对应activity标签中加上 android:windowSoftInputMode="adjustPan"
fragment软键盘顶起输入框
最近写了一个项目 遇到一些问题卡了我一段时间 记录下来 先说下我要实现的效果 1、我先选择的是监听软键盘的弹出和收回 根据不同的回调执行对应的方法 由于代码执行失败 已经被我干掉了 这里就不贴出来了 如果需要的话可以网上搜下 很好搜索的 失败原因是因为我这个界面是一个activity里四个fragment 里面有两个是这样的聊天室 都需要这种功能 但是监听是针对activity的...
软键盘弹出顶起布局
我这个情况比较单一,可能跟某些需求不一样,仅供参考; 我的需求是这样的,底部放一个按钮,点击的时候,从底部弹出一个布局,点击布局中的输入框的时候软键盘弹起,但是软键盘不能遮挡这个布局,需要将这个布局顶上去,就是第三张图的效果; 但是经过我测试后发现结果是只能将第一个EditText顶起来,第一个EditText以下的部分还是被遮挡了。 类似需求着急使用的可以直接看使用; 思路:...
软键盘顶起页面布局
软键盘顶起布局,页面跟随软键盘移动
利用TabHost自定义底部导航栏
TabHost
Android进阶之路 - 软键盘顶起解决方案
需求 1:软键盘弹出,同时不顶起整体布局 解决: 1-在清单中找到对应的Activity加入 android:windowSoftInputMode="stateHidden|adjustResize" 或者 android:windowSoftInputMode="adjustPan" 2-在代码初始化的时候加入以下这行代码 getWindow().setSoftI...
功能展示——Android底部导航栏复古风TabHost实现
我们app都有底部导航栏吧,形如: 现在我用失传多年的TabHost方法来几步实现底部导航拦的功能一、主布局<TabHost xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/tabhost" android:layout_width="fill_parent"
软键盘弹出顶起布局的小技巧
在安卓开发中我们会很频繁的和软键盘打交道,但是软键盘本来是不属于我们的布局的,它的出现会遮挡布局,比如,布局中有一个EditText是位于底部的,点击之后弹出软键盘,如果我们不做任何处理,那软键盘必然会将EditText遮挡,这是很糟糕的效果,该怎么避免呢?首先我想到了Activity的windowSoftInputMode属性,这个属性能影响两件事情: 1、当有焦点产生时,软键盘是隐藏还是显示
js监听屏幕及软键盘顶起页面问题
一.js监听屏幕是否横屏  function orientate() {   if (window.orientation === 90 || window.orientation === -90) {     alert('cross')   } else {     alert('vertical')   } } window.addEventListener('onorientation...
安卓软键盘无法顶起页面问题
安卓软键盘无法顶起页面问题 1.开发中有个需求是将页面底部的一个按钮顶起,但是开发时发现Android5.0以后的版本设置了adjustResize属性后无法成功顶起。找了半天,最后在stackoverflow找到解决方案,那就是在根布局上加上**fitsSystemWindow=”true”**即可。 这里的fitsSystemWindow具体的作用就是你的contentview是否忽略acti...
关于android软键盘弹出将edittext顶起问题
android软键盘弹出将edittext顶起问题
安卓UI--底部导航栏--TabHost、TabActivity
参考文章 http://blog.csdn.net/harvic880925/article/details/17120325http://blog.csdn.net/goodding/article/details/8628972http://blog.csdn.net/gebitan505/article/details/12064711
fragment tabhost 精美底部导航栏源代码
实现了一个精美的底部导航栏,使用fragment替代了过时的activitygroup和tabactivity。里面有详细的注释,解释了每一步为什么要这么操作。相信每一个coder都能看明白。
Android——华为虚拟键盘EditText被顶起
bug描述:EditText获得焦点后键盘被吊起,但是EditText没有在虚拟键盘的顶端,而是被顶起了一个虚拟键盘的高度如下图所示:解决办法:在布局文件中写成EditText被双ViewGroup包裹例如: <ReleateLayout> <ReleateLayout> <EditText/> </ReleateLayout> </ReleateLayout>在<A
Android EditText被软键盘遮盖
问题:EditText 第二次点击时,弹出来的软键盘会把EditText遮盖掉。   描述:设置了一个EditText,在靠近屏幕的底部,第一次点击EditText,弹起软键盘, 这时候EditText会跟随软键盘上升,这时再次手动隐藏软键盘,然后再次点击EditText, 软键盘弹出后就遮挡了EditText。 尝试了好多方法 在清单文件中对应的activity设置andro
android编辑框被软键盘覆盖
我写了一个意见反馈的程序(还没加入服务器。。)我有两个文本编辑框,但是在编辑的时候都会被然键盘覆盖住rn在网上找了方法在layout加入android:windowSoftInputMode="stateVisible|adjustResize"和rn在oncreat加getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);都不行rn求大佬相助(代码如下)rnrnrn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rnrnrnrnrnpackage com.example.imagebutton;rnrnimport java.util.ArrayList;rnimport java.util.List;rnrnimport android.app.Activity;rnimport android.graphics.Rect;rnimport android.os.Build;rnimport android.os.Bundle;rnimport android.view.View;rnimport android.view.ViewTreeObserver;rnimport android.view.WindowManager;rnimport android.widget.Button;rnimport android.widget.CheckBox;rnimport android.text.Editable;rnimport android.text.TextWatcher;rnimport android.widget.Toast;rnimport android.widget.EditText;rnimport android.widget.TextView;rnrnpublic class MainActivity extends Activity rn //设置4个复选框rn private CheckBox checkbox1,checkbox2,checkbox3,checkbox4;rn //设置两个编辑框rn private EditText editText1;rn private EditText edittext2;rn //设置编辑框1的字数限制rn private TextView textView;rn //编辑框1的最大字数为400rn private int num=400;rn //设置提交按钮rn private Button button;rn //将复选框放入容器中rn private List checkBoxList = new ArrayList();rn rn @Overridern protected void onCreate(Bundle savedInstanceState) rn super.onCreate(savedInstanceState);rn setContentView(R.layout.activity_main);rn getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);rn rn //初始化四个复选框rn checkbox1 = (CheckBox) findViewById(R.id.CheckBox1);rn checkbox2 = (CheckBox) findViewById(R.id.CheckBox2);rn checkbox3 = (CheckBox) findViewById(R.id.CheckBox3);rn checkbox4 = (CheckBox) findViewById(R.id.CheckBox4);rn //添加复选框到容器中rn checkBoxList.add(checkbox1);rn checkBoxList.add(checkbox2);rn checkBoxList.add(checkbox3);rn checkBoxList.add(checkbox4);rn //初始化按钮rn button=(Button)findViewById(R.id.Button);rn //初始化编辑框1的字数限制rn textView=(TextView)findViewById(R.id.TextView4);rn textView.setText(num+"");rn //初始化编辑框1rn editText1=(EditText)findViewById(R.id.EditText1);rn //设置提交按钮监听事件rn button.setOnClickListener(new View.OnClickListener() rn @Overridern public void onClick(View v) rn StringBuffer sb = new StringBuffer();rn //遍历集合中的checkBox,判断是否选择,获取选中的文本rn for(CheckBox checkbox:checkBoxList) rn if (checkbox.isChecked())rn sb.append(checkbox.getText().toString()+ " ");rn rn rn if(sb!=null && "".equals(sb.toString()))rn Toast.makeText(getApplicationContext(), "请至少选择一个", Toast.LENGTH_SHORT).show();rn rn elsern Toast.makeText(getApplicationContext(), sb.toString(), Toast.LENGTH_SHORT).show();rn Toast.makeText(MainActivity.this,"提交成功!",Toast.LENGTH_LONG).show();rn rn rn );rn rn editText1.addTextChangedListener(new TextWatcher() rn private CharSequence temp;rn private int selectionStart;rn private int selectionEnd;rn rn @Overridern public void onTextChanged(CharSequence s, int start, int before, int count) rn temp=s;rn rn rn @Overridern public void beforeTextChanged(CharSequence s, int start, int count,int after) rn rn rn rn public void afterTextChanged(Editable s) rn int number=num-s.length();rn textView.setText(""+number); rn selectionStart=editText1.getSelectionStart(); rn selectionEnd=editText1.getSelectionEnd(); rn if (temp.length()>num) rn s.delete(selectionStart-1, selectionEnd); rn int tempSelection=selectionEnd; rn editText1.setText(s); rn editText1.setSelection(tempSelection);//设置光标在最后 rn Toast.makeText(MainActivity.this, "字数达到上限", Toast.LENGTH_SHORT).show();rn rn rn );rn rnrn
Android 软键盘导致UI被遮挡问题
情况1:LinearLayout+android:fitsSystemWindows=&quot;false&quot;(根目录) +android:windowSoftInputMode=&quot;stateHidden|adjustResize&quot;(mainfast)// 上面设置情况 软键盘弹出页面不会动 自己来监听软键盘高度 然后设置父布局的paddingBottom为软键盘高度KeybordS.observeS...
android底部布局被软键盘抬起的问题
今天做项目的时候,在底部写了5个button,由于底部挺复杂的,所以用的framelayout布局,后来发现软键盘弹出的时候,底部的button就在软键盘的上面了,挡住了大半个屏幕,这可如何是好? 解决方案: 就是在清单文件里找到那个activiry,加上android:windowSoftInputMode="stateHidden|adjustPan"属性就可以了 我的猜想: fram
Android解决被软键盘遮挡的EditText问题
1,在xml中Activity添加配置android:windowSoftInputMode="stateVisible|adjustResize"我先试的是这个,不能解决问题 2,在onCreate()方法中setContentView()方法前加getWindow()…@Override protected void onCreate(Bundle savedInstanceState
软键盘弹出时顶起上方布局
在指定activity中,添加 android:windowSoftInputMode="adjustPan|stateHidden",上方布局将不会上移,而是软键盘会覆盖上方布局。
避免input输入框输入时底部导航栏被软键盘撑挤上来
//获取原始窗口的高度 var originalHeight=document.documentElement.clientHeight || document.body.clientHeight; //console.info("原始窗口的高度"+originalHeight); window.onresize=function(){ //软键盘弹起与隐藏 都会
android 底部Dialog里面的EditText点击软键盘顶起Dialog
最近项目需求要求做一个底部弹窗大概屏幕的1/3,上面有一个EditText,点击之后Dialog被这个输入法挡住,现在要求Dialog随之软键盘被顶起。代码如下: Dialog: final View view = LayoutInflater.from(this).inflate(R.layout.dialog, null); mDialog = new Dialog(t...
软键盘是否顶起底层布局的设置办法
以 DialogFragment为例,在onCreateView 设置, getDialog().getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); getDialog().getWindow().setSoftInputMode(WindowManager.LayoutParam...
设置android:windowFullscreen后,软键盘顶起布局失效?
rnrn我在自定义theme:title_minimum中设置了android:windowFullscreen=true后,软键盘定期布局就失效了,删除这个属性就可以。但我又想保留这个属性,请问有什么办法吗?
绝对定位 软键盘弹出时顶起底部按钮
问题描述: 看图 软键盘弹出就变成了这样。。。。遮住了我们的内容。 解决方法: 来个媒体查询:让他在软键盘弹出的时候底部的按钮就隐藏。 @media (max-width:400){  .footer{display:none;} } 还有一种解决的办法 var winHeight = $(window).height();   /
Android开发底部控件会被弹出的软键盘顶起
 在Android开发过程中会经常遇到的scrollview包含的布局中,当点击edittext时,弹出的软键盘经常会使在布局底部的控件顶起,此时的解决方案如下: 清单文件中将activity的类型修改为 Android:windowSoftInputMode=”adjustan|stateHidden”
HTML 在手机软键盘弹出顶起影响页面布局
H5在手机端,尤其是安卓手机,如果用了定位或者用了百分比的元素,很容易在键盘弹起后引起页面错乱,其中分2种情况: **情况1:**在页面中用了position: fixed; bottom: 0;。把元素定位在页面的底部,可是这时候键盘弹起后,该定位元素也会跟着键盘一起弹起。网上大多数答案是:修改文档的排版,改为用absoult,或者监听页面高度变化等方法,在这种情况中亲测无效! 具体的思路后面会...
android tabhost 的问题
请问如何在Tabhost的一个Activity中添加一个Tabhost?
android tabhost选项卡问题
如下图,我在设计界面的时候这个选项卡中的图标和文字都是居中的[img=https://img-bbs.csdn.net/upload/201402/14/1392342573_41699.jpg][/img]rn为什么放在手机上运行的时候就往右边偏了,无论什么分辨率的手机都是这样rn[img=https://img-bbs.csdn.net/upload/201402/14/1392342681_638396.png][/img]
Android 底部导航栏
最近看了些导航栏,想更新下自己的知识,简单记录下三个底部导航栏的实现方式   FragmentTabHost + Fragment 这个是我自己用得最多的,感觉蛮好用的~ 上代码咯 在FragmentTabHost代码中两个ID android:id=&quot;@android:id/tabhost&quot; 和 android:id=&quot;@android:id/tabcontent&quot;这个是必须这两...
android 选项卡 TabHost的问题
我在从第一个卡切换到第二个卡为什么第一卡里面的内容还在rnjava代码rn[code=Java] public class MainActivity extends TabActivity rn TabHost tabs =null;rn @Overridern public void onCreate(Bundle savedInstanceState) rn super.onCreate(savedInstanceState); rn setContentView(R.layout.activity_main);rn tabs =getTabHost(); rn LayoutInflater.from(this).inflate(R.layout.a, tabs.getTabContentView(),true);rn //设置Tab1 rn TabSpec tab1 = tabs.newTabSpec("tab1"); rn tab1.setIndicator("tab1"); // 设置tab1的名称 rn tab1.setContent(R.id.sa); // 关联控件 rn tabs.addTab(tab1); // 添加tab1rn //设置Tab1 rn TabSpec tab2 = tabs.newTabSpec("tab1"); rn tab2.setIndicator("tab1"); // 设置tab1的名称 rn// tab2.setContent(new Intent(this,LoginActivity.class)); // 关联控件rn tab2.setContent(R.id.sas);rn tabs.addTab(tab2); rn rn [/code]rnrnxml代码:rnactivity_main.xmlrn[code=XML]rnrnrn rnrn rnrn rnrn rn rn rn rn rn rn[/code]rna.xml的内容rn[code=XML]rnrnrn rnrn rn rnrnrnrn rnrn rnrn rnrn[/code]
android 显示内容被底部导航栏遮挡
由于华为和魅族手机系统自带的有底部导航栏,会造成一些布局被遮挡。 之前用的eclipse没有发现被遮挡的情况,最近公司要求使用android studio,在做分享的时候发现,弹出的分享下面的文字被遮挡了。于是上网查找解决办法,有的说是在布局里面的跟布局加入android:fitsSystemWindows=”true”即可解决,可是我加入以后还是未能解决。 未解决之前的图片 有没有发
Android底部导航栏
使用Android Studio制作像微信一样的底部导航栏 第一:显示效果及源码下载地址 下图就是自主制作的底部导航栏: 实现上述效果的源代码下载地址:github.com 第二:简单讲述一下操作流程 a、新建一个项目 此时只有一个MainActivity和activity_main.xml文件,这时最好新建两个包activity和tab包,这样的好处是条理清晰。 b、把下载源码安装此路劲打...
android 底部导航栏
欢迎使用Markdown编辑器写博客这几天Android开发遇到布局问题,布局被手机底部的导航栏(虚拟键)挡住啦一部分。 在网上查啦一些资料,确定这几种方法能够实现。布局中也要添加android:fitsSystemWindows="true"1、在Activity onCreate方法中添加 :////透明导航栏,就是下面三个虚拟按钮 getWindow().addFlags(WindowMan
android底部导航栏
第一种方式 BottomNavigationView android自带的底部导航栏。 新建Activity时选择Bottom Navigation Activity就会自动使用BottomNavigationView并生成相应代码。 布局如下 &lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;android.support.constraint...
TabHost加载Activity及自定义底部导航栏的实现
TabHost加载Activity及自定义底部导航栏的实现
相关热词 c# stream 复制 android c# c#监测窗口句柄 c# md5 引用 c# 判断tabtip 自己写个浏览器程序c# c# 字符串变成整数数组 c#语言编程写出一个方法 c# 转盘抽奖 c#选中treeview