安卓 种子3屏幕显示问题,按键精灵安卓版无法全部显示。

5被浏览4,627分享邀请回答暂时还没有回答,开始写第一个回答1 个回答被折叠()Android软键盘不能正确显示_ASP.NET技巧_动态网站制作指南
Android软键盘不能正确显示
来源:人气:130
感谢 群里大神 谷歌的小弟
在Activity中含有EditText时,我们常常在AndroidManifest.中为该Activity设置Android:windowSoftInputMode属性,其中最常用的值就是adjustResize和adjustPan。在此请思考几个问题:
adjustResize和adjustPan有什么区别?
adjustResize和adjustPan的应用场景有何差异?
当设置android:windowSoftInputMode后如何监听软键盘的弹起与隐藏?
1.干嘛要去监听软键盘的弹起呢?有什么用呢?
当键盘弹起来的时候在紧靠键盘上方的地方出现了一个自定义布局,点击笑脸就可以发送专属emoji,点击礼盒就可以发送福利。
当然,在键盘收起的时候这个布局也就不可见了。
除此以外,在其他不少场景也会有类似的UI设计。在这些情况下,我们都要监听键盘软键盘的弹起与隐藏。善良的童鞋会想:这个没难度呀,调用一下官方的API就行。很久以前,我也是这么想的。可是,事与愿违,官方文档中根本就没有提供检测软键盘状态的接口。
既然官方没有把这个API洗干净整整齐齐的摆在眼前,那我们就自己实现它
2. adjustResize
在AndroidManifest.xml中为该Activity设置
android:windowSoftInputMode="adjustResize"
该模式下系统会调整屏幕的大小以保证软键盘的显示空间。
eg: 屏幕的高为1920px,那么整个Activity的布局高度也为1920px。当设置该属性后点击界面中的EditText,此时弹出软键盘其高度为800px。为了完整地显示此软键盘,系统会调整Activity布局的高度为1920px-800px=1120px。
所以,此时的布局与原本的布局就发生了一些变化,比如:整体布局显示不完整,控件外观的变形,控件显示位置的错乱等等。这些现象都是因为原布局的高度变小所导致
结合代码分析
package com.lizi.
import android.content.C
import android.util.AttributeS
import android.widget.RelativeL
* Created by lizi on .
public class RelativeLayoutSubClass extends RelativeLayout {
ivate OnSoftKeyboardListener mSoftKeyboardL
public RelativeLayoutSubClass(Context context, AttributeSet attrs) {
super(context, attrs);
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
System.out.println("----& onMeasure");
protected void onLayout(boolean changed, int l, int t, int r, int b) {
super.onLayout(changed, l, t, r, b);
mSoftKeyboardListener.onSoftKeyboardChange();
System.out.println("----& onLayout");
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
super.onSizeChanged(w, h, oldw, oldh);
System.out.println("----& onSizeChanged");
public void setSoftKeyboardListener(OnSoftKeyboardListener listener){
mSoftKeyboardListener=
public interface OnSoftKeyboardListener{
public void onSoftKeyboardChange();
package com.lizi.
import android.support.v7.app.AppCompatA
import android.os.B
public class MainActivity extends AppCompatActivity {
private RelativeLayoutSubClass mRootL
private int screenH
private int screenW
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
private void init(){
screenHeight=getResources().getDisplayMetrics().heightP
screenWidth=getResources().getDisplayMetrics().widthP
threshold=screenHeight/3;
mRootLayout= (RelativeLayoutSubClass) findViewById(R.id.rootLayout);
mRootLayout.setSoftKeyboardListener(new RelativeLayoutSubClass.OnSoftKeyboardListener() {
public void onSoftKeyboardChange() {
System.out.println("Main ----& onSizeChanged");
&?xml version="1.0" encoding="utf-8"?&
&com.lizi.softpan.RelativeLayoutSubClass
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rootLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity"&
&RelativeLayout
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_alignParentTop="true"
android:background="#7fb80e"&
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="浅绿色部分在屏幕顶部"
android:textSize="25sp"
android:layout_centerInParent="true"
android:textColor="#843900"/&
&/RelativeLayout&
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="这里是一个输入框"
android:textSize="25sp"
android:layout_centerInParent="true"
android:textColor="#843900"/&
&RelativeLayout
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_alignParentBottom="true"
android:background="#ffc20e"&
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="浅黄色部分在屏幕底部"
android:textSize="25sp"
android:layout_centerInParent="true"
android:textColor="#f05b72"/&
&/RelativeLayout&
&/com.lizi.softpan.RelativeLayoutSubClass&
点击 edittext
当软键盘状态变化的时候RelativeLayoutSubClass中有哪些行为发生:
1.软键盘状态变化时会调用其onMeasure(),onLayout(),onSizeChanged()
2.在onSizeChanged()中可以确知软键盘状态变化前后布局宽高的数值
至此,发现一个关键点:onSizeChanged()
我们可以以此为切入点检测软键盘的状态变化,当软键盘状态发生改变时,通过对Activity布局文件中Layout对onSizeChanged()判断软键盘的弹起或隐藏
3. adjustPan
在AndroidManifest.xml中为该Activity设置
android:windowSoftInputMode=”adjustPan”
该模式下系统会将界面中的内容自动移动从而使得焦点不被键盘覆盖,即用户能总是看到输入内容的部分
比如,还是刚才的那个布局,现在将其windowSoftInputMode设置为adjustPan再点击EditText,效果如下:
为了避免软键盘弹起后遮挡EditText,系统将整个布局上移了,也就是我们常说的将布局顶上去了
此时再来看看当软键盘状态变化的时候RelativeLayoutSubClass中有哪些行为发生:
1.软键盘状态变化时会调用其onMeasure(),onLayout()
2.onSizeChanged()并没有被调用
3.整个布局的高度也没有变化
这时并没有执行onSizeChanged()方法,这也就说原本检测软键盘状态的方法在这就行不通了,得另辟蹊径了。
当软键盘弹起时,原布局中是不是有一部分被键盘完全遮挡了呢?
对吧,也就是说原布局的可视范围(更精确地说是可视高度)发生了变化:变得比以前小了。所以,我们可以以此为突破口,具体代码如下:
public boolean isSoftKeyboardShow(View rootView) {
screenHeight = getResources().getDisplayMetrics().heightP
screenWidth = getResources().getDisplayMetrics().widthP
System.out.println("screenHeight ----& "+screenHeight);
System.out.println("screenWidth ----& "+screenWidth);
threshold = screenHeight/3;
//获取根布局(RelativeLayoutSubClass)原本的高度
int rootViewBottom = rootView.getBottom();
//获取根布局(RelativeLayoutSubClass)原本的高度
Rect rect = new Rect();
rootView.getWindowVisibleDisplayFrame(rect);
int visibleBottom = rect.
//计算两者的差值
int heightDiff = rootViewBottom - visibleB
System.out.println("----& rootViewBottom="+rootViewBottom+",visibleBottom="+visibleBottom);
System.out.println("----& heightDiff="+heightDiff+",threshold="+threshold);
//判断软键盘是否弹起
return heightDiff &
至此当windowSoftInputMode设置为adjustPan时软键盘的状态监听也得到了实现
https://github.com/aixiaozi/SoftInputMode
优质网站模板哪位知道安卓手机虚拟按键失灵如何解决?
输入手机号码,报价结果将发送到您手机
装修顾问-馨馨
4年行业经验,24h可咨询
10秒闪电通过好友
报价短信已发送到您的手机
因材料品牌及工程量不同,具体报价以量房实测为准
稍候装修管家将回电您,免费提供装修咨询服务
您的装修预算约
*装修管家将回电您,免费提供装修咨询服务
*装修管家将回电您,免费提供装修咨询服务
*因材料品牌及工程量不同,具体报价以量房实测为准
装修顾问 -馨馨
(四年装修行业经验)
微信扫一扫
3.&您家小区名称 :&&
请选择您家的装修时间
哪位知道安卓手机虚拟按键失灵如何解决?
提问者:傅惠心| 地点:
| 浏览次数:
532| 时间:
我来帮他解答
还可以输入1500字
已有3条回答
回答数:7710
| 被采纳数:13
TP失灵, 有可能是TP坏了, 或者排线松动。
简单的自测方法:
设置----关于手机-- 软件版本号 点击10次 出现 开发者选项,
然后勾选 大概叫 某某指针位置 的选项,然后触摸屏幕会显示触点轨迹, 看看你手指划过时的线是否正常,如果不正常,那就中奖了, 去售后看看把。
回答数:9168
| 被采纳数:2
1.我们上百度下载Gravity box【kk】(安卓4.4及以上用KK,4.4以下用JB)再下载Xposed Installer。
2.然后激活Xposed Installer框架和Gravity box。
3.激活步骤:先给Xposed Installer,Gravity box进行root授权(Gravity box有些手机无法识别进行授权,无关紧要,激活Xposed Installer框架就行了)点击Xposed Installer,进入后点击”模块“,点击Gravity box后方的框框,打勾。能打的话,直接重启;不能打勾的话先点击点击”安装/更新“会出现弹窗,要求重启。我们就按要求重启。
4.重启之后,再给Gravity box打勾,应该还要再重启一次,即可激活。(若第一次就打勾成功,那么只需重启一次)
5.Gravity box激活后,打开——点击”虚拟按键“——打开“总开关”——重启。虚拟按键出现
希望我的回答对你有帮助
回答数:2239
| 被采纳数:7
方法一:不使用第三方软件
手机必须先ROOT,然后安装RE管理器。
打开RE管理器,然后在ROOT目录下找到system文件夹下的build.prop文件。
长按build.prop文件并在弹出的选项中选择open in text editor选项,中文版是在文本编辑器中打开。
这时候会看到一堆代码,不用管他。直接拉到最后一行,输入qemu.hw.mainkeys=0。
代码输入完成之后,选择save and exit,中文版的是保存并退出。
重启手机就会发现屏幕最下方出现虚拟按键喽,不过是四个按键还需要适应一段时间。
方法二:使用按键软件
  这个办法也是需要先ROOT,然后下载按键救星软件或是虚拟按键软件来替代实体功能键。
希望您采纳安卓版虚拟键盘怎么调出全键盘,怎么打开是手柄一样的,只有四个字母没法输秘籍啊_百度知道
安卓版虚拟键盘怎么调出全键盘,怎么打开是手柄一样的,只有四个字母没法输秘籍啊
我有更好的答案
模拟器啊。这个没办法的,因为打开输入法需要有明确的文本框,这在编写程序时就已经注定了
采纳率:36%
什么输入法
game keyboard
为您推荐:
其他类似问题
安卓的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。谁知道手机按键屏幕没反应怎么办?3个回答SM男孩天空1、安卓手机如果屏幕无故无法正常显示,很可能是由于屏幕,排线等硬件故障导致的。
  2、建议用户携带手机,发票,保修卡前往所在地的品牌客服检测。
  3、在检测手机后客服会告知用户故障原因。
  4、手机质保期为1年,如果手机在保且系自然故障,售后负责保修。
  5、如果已过保或是系人为故障所致,那就只能付费维修了。
鐇闞帺方案一:
1、关闭手机,取出电池,手机静置五分钟左右
2、找一根USB数据线,连接手机
3、洗手,或者把手弄湿
4、湿手状态下同一只手的拇指接触USB线另一端的金属部分,食指按到地上两秒左右
5、拆开后盖我们可以看到一个小小的金属块在电池仓隔壁,这就是手机震动的发生器,俗称震子。由于它也是直接连接手机主板的,我们可以如法炮制,湿手状态下同一只手的拇指接触震子,食指按到地上两秒左右。
电脑报上面有个文章是解决屏幕漂移的。用热吹风(吹头发的)吹屏幕,注意开到中档,吹得要均匀感觉屏幕热了就行了(注意:要把机子电池拿掉,我把手机吹到发烫)
电击法,用打火机里的静电器电击屏幕(用沾有水的纸巾覆盖着失灵处电击),改变电场,不一定全部都适用,大家要谨慎!
用透明胶在失灵处不停地粘贴撕开粘贴撕开,直到屏幕恢复触控为止
当你抱着绝望要买外屏的情况下,你可以试着把以上所有方案都做一次,掺杂着做,不停地重复,可能需要一大段时间时间去重复掺杂方法做,但百分之九十都会成功修复的
稻草人_0299导致触屏失灵有以下原因:
1 手机的软件问题,把手机上的资料备份下, 然后恢复出厂设置(打开手机桌面--设置--恢复出厂/备份和重置--恢复出厂)。
2 下载的第三方软件和系统有冲突,进行双清(在关机的状态下,同时按住音量加键和电源键15秒,出现绿色小机器人的状态,进行双清即可。
3 手机触屏的问题。
出现第三种情况建议携带相关证件发票到网点工程师检测维修。
希望能帮到你,望采纳。
热门问答123456789101112131415161718192021222324252627282930相关问答3个回答SM男孩天空1、安卓手机如果屏幕无故无法正常显示,很可能是由于屏幕,排线等硬件故障导致的。
  2、建议用户携带手机,发票,保修卡前往所在地的品牌客服检测。
  3、在...3个回答悲伤love恋曲不是这样 你这种可能分几种:
1 充电时充电器不匹配造成造成 ,建议换充电器 2 手机越狱或越狱后装了不太兼容的软件及游戏 造成。建议刷系统
3 手机被摔过...3个回答fvfdgsdgG01手机屏幕没反应解决方法:
  1、关闭手机,取出电池,手机静置五分钟左右 ;
  2、找一根USB数据线,连接手机;
...3个回答小鬼ERmx4解决办法;
① 先确认触屏不灵时,手或屏幕上是否有水滴或其它液体,若手或屏幕有液体是正常现象(电容屏特性所致),擦干净手和屏幕上的液体即可。
② 尝试下拉状...5个回答最最最最闪耀丶1、检查手机是否有明显的裂痕或者缺陷。有的话建议到维修维修,必要时更换硬件。
2、观察屏幕是否有明显的裂痕或者缺陷。有的话建议到维修维修,必要时更换硬件。
3、进入设置中,...4个回答饶织江门手机u盘连接手机没反应: 首先拿优盘在别的电脑上试试,看看是电脑问题还是优盘问题,是优盘就先杀毒,或者备份数据后格盘再试试。是电脑问题就看看驱动,驱动没问题就给电脑杀毒,进安全模式...3个回答牛牛猪_1、手机是否处于开机状态。若手机连接电脑时屏幕已锁屏,建议先将屏幕解锁。
2、下滑手机屏幕顶帘,查看通知栏是否有提示“已连接为媒体设备”或“已连接进行充电”-勾选“媒体...3个回答soufunwa655971、手机是否处于开机状态。若手机连接电脑时屏幕已锁屏,建议先将屏幕解锁。
2、下滑手机屏幕顶帘,查看通知栏是否有提示“已连接为媒体设备”或“已连接进行充电”-勾选“媒体...3个回答baotaoego遇到手机屏幕失灵,首先我们需要将手机屏幕进行清洁,手机屏幕静电也有可能导致触屏失灵,这时只需要用手将整个屏幕轻轻的擦一下即可。或者你也可以尝试将保护膜揭掉来进行屏幕的清洁。
&b...3个回答五角枫林虚拟按键失灵的朋友不必再烦恼,我自己亲测可用的完美方法奉献给大家。不用换屏,不用按键助手。1分钟搞定。
第一步:下载我已经修改好的系统文件。这次发了4.3 和4.4两...}

我要回帖

更多关于 安卓模拟器按键精灵 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信