popupWindow+软键盘弹出,edittext设置,textview字体颜色设置,log打印过长显示不出来的问题
来源:互联网 发布:java窗口输入 编辑:程序博客网 时间:2024/04/27 14:28
最近开发遇到的问题:
- popupWindow上有输入框,我希望在软件盘弹出的时候popupWindow可以上移,搜集了很多资料,有的说通过屏幕的大小减去Activity显示的大小,就是键盘的高度,然后动态设置popupWindow的大小,但是没有实现.因为popupWindow的大小就是屏幕的大小,所以此时Activity显示的大小就是0.
/** 2. 获取键盘的高度,设置scrollview的大小*/public void setScrollViewHight() { ll_root.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { /** * the result is pixels */ @Override public void onGlobalLayout() { Rect r = new Rect(); //获取可见高度 int visiableHeight = r.bottom - r.top; LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) myScrool.getLayoutParams(); //获取当前控件的布局对象 params.height = visiableHeight;//设置当前控件布局的高度 myScrool.setLayoutParams(params);//将设置好的布局参数应用到控件中 ll_root.getWindowVisibleDisplayFrame(r); int screenHeight = ll_root.getRootView().getHeight(); int heightDifference = screenHeight - visiableHeight; Log.e("可见高度是", visiableHeight + ""); Log.e("Keyboard Size", "Size:" + heightDifference); //boolean visible = heightDiff > screenHeight / 3; } });}
所以我使用了另一种方式,就是设置popupWindow的属性,据说这两个属性的位置不可以变,我没有测试,但是设置之后也没其效果,之后我就通过问一些大神知道了popupWindow必须被scrollview包裹才行,不然不可以弹出.
menuWindow.setSoftInputMode(PopupWindow.INPUT_METHOD_NEEDED); menuWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
也有说找到这个activity的配置文件设置这个属性android:windowSoftInputMode = “stateVisible|adjustResize”但是我的也没有效果,之后没有测试,可能是我开始没有用scrollview做顶级布局吧.如果是”adjustPan|stateHidden”则键盘弹出布局不会上移,还有其他的属性,这里就不一一例举了.
- EditText不能输入小数,只要把android:inputtype=”number”(整数),可以number改为numberDecimal即可,还有其他的edittext的设置可以参照以下网址进行动态设置
- 设置Textview的字体颜色的几种方式:
在类文件中动态设置
- textview.setTextColor(this.getResources().getColor(R.color.red)); - textview.setTextColor(Color.rgb(255,255, 255)); - textview.setTextColor(Color.parseColor("#FFFFFF")); - textview.setTextColor(Color.parseColor("#FFFFFF")); - tv.setTextColor(0xffff00ff);//0xffff00ff是int类型的数据,分组一下0x|ff|ff00ff,0x是代表颜色整数的标记,ff是表示透明度,ff00ff表示颜色,注意:这里ffff00ff必须是8个的颜色表示,不接受ff00ff这种6个的颜色表示。
设置控制器,在drawable文件夹下创建对应的文件,设置其各种状态下的颜色.
在布局文件中设置,布局文件的设置相对来说比较简单,但属于静态设置.
- android:textColor="@color/red" <color name="red">#FF0000</color> - android:textColor="#ffffff"
- log打印过长显示不出来,在获取数据的时候经常会出现数据只打印一半这样解析很费劲,后来看源码了解到log打印有限制,最大是4k(就是字符串的长度),所以我们可以设置一下,防止超过最大长度我们可以设置一个小点的阈值,segmentSize = 3 * 1024,低于这个值就直接打印,,超过的就截成段来打印即可.
public class LogUtil { /** * 截断输出日志 * @param msg */ public static void e(String tag, String msg) { if (tag == null || tag.length() == 0 || msg == null || msg.length() == 0) return; int segmentSize = 3 * 1024; long length = msg.length(); if (length <= segmentSize ) {// 长度小于等于限制直接打印 Log.e(tag, msg); }else { while (msg.length() > segmentSize ) {// 循环分段打印日志 String logContent = msg.substring(0, segmentSize ); msg = msg.replace(logContent, ""); Log.e(tag, logContent); } Log.e(tag, msg);// 打印剩余日志 } }}
这些都是平时用的挺多的,每次查每次忘,所以整理一下,方便以后使用.
0 0
- popupWindow+软键盘弹出,edittext设置,textview字体颜色设置,log打印过长显示不出来的问题
- android设置EditText不弹出软键盘
- 设置默认Dialog里面的EditText不弹出软键盘
- android两种方式设置EditText不弹出软键盘
- android两种方式设置EditText不弹出软键盘
- android两种方式设置EditText不弹出软键盘
- TextView的字体颜色设置
- EditText只显示光标不弹出软键盘的方法
- 设置textview显示不同的字体和颜色
- EditText设置软键盘弹出效果
- Android EditText设置默认不弹出软键盘,点击EditText外部隐藏软键盘,EditText获取焦点时隐藏hint
- 设置popupwindow弹出后的背景颜色
- 关于设置textview字体颜色问题
- ForegroundColorSpan 设置textView字体颜色有问题
- android TextView、EditText对部分内容设置颜色、字体、超链接、图片
- android TextView、EditText对部分内容设置颜色、字体、超链接、图片
- android TextView、EditText对部分内容设置颜色、字体、超链接、图片
- android TextView、EditText对部分内容设置颜色、字体、超链接、图片
- 弹性布局基础讲解与高效应用
- PAT 1041
- 乐视发布超4 X70/Max65/Max55 2017发力声学打造音质新标杆
- 微信小程序WebSocket相关问题说明
- 翻页时保持复选框的选中的解决办法
- popupWindow+软键盘弹出,edittext设置,textview字体颜色设置,log打印过长显示不出来的问题
- Python 时间序列化方法
- php7微信中遇到的问题
- Codeforces 761E Dasha and Puzzle【构造,树dfs】
- Angular中组件间的通信
- ubantu常用命令
- selenium 元素查找find_element_by_id方法例子
- 5.2StringBuffer,Integer,Character
- Linux初学概述