热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

EditText弹出软键盘,布局webview不动,遮挡屏幕

当我在点击EditText时候,屏幕会整体上移,但是屏幕中有一个webview的布局,还在原来的位置,并且会遮挡布局。而且webview布局里的内容还消失了,怎么解决webview的遮挡问题,还有we
当我在点击EditText时候,屏幕会整体上移,但是屏幕中有一个webview的布局,还在原来的位置,并且会遮挡布局。而且webview布局里的内容还消失了,怎么解决webview的遮挡问题,还有webview的显示问题?
引用

    xmlns:tools="http://schemas.android.com/tools"
    android:layout_
    android:layout_
    tools:cOntext="com.edittext.zedittext.MainActivity" 
    android:orientation="vertical">
    
             android:layout_
        android:layout_
        android:text="@string/hello_world" />
             android:layout_
android:layout_
android:src="@drawable/google"
        />
    
              android:id="@+id/social_list_feed_message_textview"
        android:layout_
        android:layout_
        android:layout_marginRight="10dip"
        android:layout_marginTop="5dip"
/>
    
             android:layout_
android:layout_
android:src="@drawable/google"
        />
    
             android:layout_
        android:layout_
        android:orientation="horizontal"
        android:gravity="center_vertical"
        >
        
             android:layout_
        android:layout_
        android:hint="请输入信息"
        android:layout_weight="4"
        />
             android:layout_
        android:layout_weight="1"
        android:layout_
        android:text="post"
        >
    




public class MainActivity extends Activity {

private WebView webView;  
static final String mimeType = "text/html";  
static final String encoding = "utf-8";  

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
setContentView(R.layout.activity_main);
init();
}

private void init() {
webView = (WebView) findViewById(R.id.social_list_feed_message_textview);
this.localHtmlZh();
// webViewFeed.setTextDirection(textDirection);
}

private void localHtmlZh() {
try {  
      String data = "在模拟器 2.1 上测试";  
      // utf-8编码处理(在SDK1.5模拟器和真实设备上都将出现乱码,SDK1.6上能正常显示)  
      // MyWebView.loadData(data, mimeType, encoding);  
      // 对数据进行编码处理(SDK1.5版本)  
      webView.loadData(URLEncoder.encode(data, encoding), mimeType, encoding);  
      // MyWebView.loadDataWithBaseURL(null, data, mimeType, encoding, null);  
  
    } catch (Exception ex) {  
      ex.printStackTrace();  
    } 
}

public boolean onTouchEvent(MotionEvent event) {
        if(null != this.getCurrentFocus()){
            /**
             * 点击空白位置 隐藏软键盘
             */
            InputMethodManager mInputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
            return mInputMethodManager.hideSoftInputFromWindow(this.getCurrentFocus().getWindowToken(), 0);
        }
        return super .onTouchEvent(event);
    }


}

5 个解决方案

#1


用RelativeLayout布局

#2


引用 1 楼 爱吃鹌鹑蛋的回复:
用RelativeLayout布局

这个方法,试了一下还是不行。

#3


把这些东西都放到scrollview中

#4


在AndroidManifest.xml该布局的activity加上android:windowSoftInputMode="adjustResize|stateHidden"

#5


把 getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);  去掉

xml改成


    xmlns:tools="http://schemas.android.com/tools"
    android:layout_
    android:layout_
    tools:cOntext="com.edittext.zedittext.MainActivity"
    android:orientation="vertical">

           android:layout_
       android:layout_
       android:orientation="vertical">
                   android:layout_
           android:layout_
           android:text="hi" />
                   android:layout_
           android:layout_
           android:src="@drawable/hb_down"
           />

                   android:id="@+id/social_list_feed_message_textview"
           android:layout_
           android:layout_
           android:layout_marginRight="10dip"
           android:layout_marginTop="5dip"
           />

                   android:layout_
           android:layout_
           android:src="@drawable/hb_down"
           />

                   android:layout_
           android:layout_
           android:orientation="horizontal"
           android:gravity="center_vertical"
           >

                           android:layout_
               android:layout_
               android:hint="请输入信息"
               android:layout_weight="4"
               />
           
       

   




就可以了

推荐阅读
  • 使用 ListView 浏览安卓系统中的回收站文件 ... [详细]
  • 本文介绍了一种自定义的Android圆形进度条视图,支持在进度条上显示数字,并在圆心位置展示文字内容。通过自定义绘图和组件组合的方式实现,详细展示了自定义View的开发流程和关键技术点。示例代码和效果展示将在文章末尾提供。 ... [详细]
  • 【问题】在Android开发中,当为EditText添加TextWatcher并实现onTextChanged方法时,会遇到一个问题:即使只对EditText进行一次修改(例如使用删除键删除一个字符),该方法也会被频繁触发。这不仅影响性能,还可能导致逻辑错误。本文将探讨这一问题的原因,并提供有效的解决方案,包括使用Handler或计时器来限制方法的调用频率,以及通过自定义TextWatcher来优化事件处理,从而提高应用的稳定性和用户体验。 ... [详细]
  • 在处理 XML 数据时,如果需要解析 `` 标签的内容,可以采用 Pull 解析方法。Pull 解析是一种高效的 XML 解析方式,适用于流式数据处理。具体实现中,可以通过 Java 的 `XmlPullParser` 或其他类似的库来逐步读取和解析 XML 文档中的 `` 元素。这样不仅能够提高解析效率,还能减少内存占用。本文将详细介绍如何使用 Pull 解析方法来提取 `` 标签的内容,并提供一个示例代码,帮助开发者快速解决问题。 ... [详细]
  • 深入解析 Android 中 EditText 的 getLayoutParams 方法及其代码应用实例 ... [详细]
  • ButterKnife 是一款用于 Android 开发的注解库,主要用于简化视图和事件绑定。本文详细介绍了 ButterKnife 的基础用法,包括如何通过注解实现字段和方法的绑定,以及在实际项目中的应用示例。此外,文章还提到了截至 2016 年 4 月 29 日,ButterKnife 的最新版本为 8.0.1,为开发者提供了最新的功能和性能优化。 ... [详细]
  • 在Android开发中,实现多点触控功能需要使用`OnTouchListener`监听器来捕获触摸事件,并在`onTouch`方法中进行详细的事件处理。为了优化多点触控的交互体验,开发者可以通过识别不同的触摸手势(如缩放、旋转等)并进行相应的逻辑处理。此外,还可以结合`MotionEvent`类提供的方法,如`getPointerCount()`和`getPointerId()`,来精确控制每个触点的行为,从而提升用户操作的流畅性和响应性。 ... [详细]
  • 在探讨如何在Android的TextView中实现多彩文字与多样化字体效果时,本文提供了一种不依赖HTML技术的解决方案。通过使用SpannableString和相关的Span类,开发者可以轻松地为文本添加丰富的样式和颜色,从而提升用户体验。文章详细介绍了实现过程中的关键步骤和技术细节,帮助开发者快速掌握这一技巧。 ... [详细]
  • Python 伦理黑客技术:深入探讨后门攻击(第三部分)
    在《Python 伦理黑客技术:深入探讨后门攻击(第三部分)》中,作者详细分析了后门攻击中的Socket问题。由于TCP协议基于流,难以确定消息批次的结束点,这给后门攻击的实现带来了挑战。为了解决这一问题,文章提出了一系列有效的技术方案,包括使用特定的分隔符和长度前缀,以确保数据包的准确传输和解析。这些方法不仅提高了攻击的隐蔽性和可靠性,还为安全研究人员提供了宝贵的参考。 ... [详细]
  • 在Android平台中,播放音频的采样率通常固定为44.1kHz,而录音的采样率则固定为8kHz。为了确保音频设备的正常工作,底层驱动必须预先设定这些固定的采样率。当上层应用提供的采样率与这些预设值不匹配时,需要通过重采样(resample)技术来调整采样率,以保证音频数据的正确处理和传输。本文将详细探讨FFMpeg在音频处理中的基础理论及重采样技术的应用。 ... [详细]
  • 经过两天的努力,终于成功解决了半平面交模板题POJ3335的问题。原来是在`OnLeft`函数中漏掉了关键的等于号。通过这次训练,不仅加深了对半平面交算法的理解,还提升了调试和代码实现的能力。未来将继续深入研究计算几何的其他核心问题,进一步巩固和拓展相关知识。 ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • 依然最钟爱《People Have the Power》,强烈推荐大家聆听这首经典之作
    尽管今日情绪低落,我在音乐库中反复筛选,最终还是选择了《People Have the Power》来激励自己。这首歌不仅旋律动听,歌词也充满力量,能够带给人正能量。强烈建议大家找来聆听,体验其独特的魅力。《People Have the Power》虽然不是出自专辑《Horses》,但同样是一首不可多得的经典之作。 ... [详细]
  • 在《ChartData类详解》一文中,我们将深入探讨 MPAndroidChart 中的 ChartData 类。本文将详细介绍如何设置图表颜色(Setting Colors)以及如何格式化数据值(Formatting Data Values),通过 ValueFormatter 的使用来提升图表的可读性和美观度。此外,我们还将介绍一些高级配置选项,帮助开发者更好地定制和优化图表展示效果。 ... [详细]
  • 2018 HDU 多校联合第五场 G题:Glad You Game(线段树优化解法)
    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6356在《Glad You Game》中,Steve 面临一个复杂的区间操作问题。该题可以通过线段树进行高效优化。具体来说,线段树能够快速处理区间更新和查询操作,从而大大提高了算法的效率。本文详细介绍了线段树的构建和维护方法,并给出了具体的代码实现,帮助读者更好地理解和应用这一数据结构。 ... [详细]
author-avatar
执念
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有