开发备忘
韩zj
android开发
springBoot开发
展开
-
java和android学习资料
1.java经典的书籍,《java编程思想》的第五版,基于java8On Java 8 中文版2.阿里巴巴Java开发手册3.阿里巴巴android开发手册4.Java 8编程官方参考教程5.Java 8实战6.effective-java7.Java核心技术8.Android 源码设计模式解析与实战 第2版9.Android开发艺术探索10.Java学习笔记11.android官网...原创 2020-10-21 09:34:53 · 135 阅读 · 0 评论 -
String的trim()方法无效的解决办法
后台返回的数据中,有空格,用trim()方法无效,后来发现,表面上看到的空格,unicode为12288,是全角空格,所以要先替换掉再trim(),str = str.replace((char) 12288, ' ');str=str.trim();参考文章【JAVA】unicode为12288字符原创 2017-01-10 09:50:21 · 8655 阅读 · 0 评论 -
android webview 加载本地html并且解决多图卡顿问题
使用webview加载本地html,因为本地html使用多张图片,滑动起来卡顿,解决方法如下: 把文件夹放入assets文件夹下 Activity加载: WebView wView = (WebView)findViewById(R.id.webview); wView.loadUrl("file:///android_asset/guide/index.html");加速图片原创 2016-03-25 13:53:01 · 10829 阅读 · 0 评论 -
代码中设置控件间距
在布局中设置间距比较简单,只需要使用android:layout_marginLeft等属性就可以了,有的时候要在代码中根据具体情况动态添加一些控件,在代码中设置间距 //列表中根据值加入ImageView,创建基础的ImageView private ImageView getBaseImageView(int sourceID){ ImageView imageView原创 2016-06-30 16:52:14 · 4985 阅读 · 0 评论 -
android bundle封装传递map对象
创建一个继承Serializable的类,用于传递不同的mappublic class SerializableMap implements Serializable { private Map<String,String> stringMap; private Map<String,int[]> intsMap; public Map<String, String> getS原创 2016-07-01 17:07:12 · 3439 阅读 · 0 评论 -
android ListView 点击事件失效
项目中用到了listView,很奇怪的是点击列表项事件失效,猜测是因为listView中的列表项根据代码来动态添加ImageView的原因吧。解决的方法是在item最外层添加属性android:descendantFocusability=”blocksDescendants”<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:a原创 2016-07-01 17:10:28 · 679 阅读 · 0 评论 -
android弹出对话框,遇到permission denied for this window type
调试极光推送,在收到推送的时候弹出对话框,在有的机型上报错 :android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@24a537cb -- permission denied for this window type相关代码是:AlertDialog dialog原创 2016-07-05 18:30:54 · 8534 阅读 · 2 评论 -
ExpandablelistView+swipeLayout 滑动删除
使用AndroidSwipeLayout可以实现android列表滑动删除的效果,github上地址是AndroidSwipeLayout 因项目需要,在ExpandablelistView中加入左滑删除效果,网上搜索到一篇文章比较合适 ExpandableListView左滑删除项目中实现的效果图 实现 1.首先在总布局中加入ExpandableListView,<Expanda原创 2016-07-12 14:41:33 · 4183 阅读 · 3 评论 -
RecyclerView实现滚动滑动以及点击改变控件颜色
项目中需要横向滚动效果,按照以前的思路,我会写一个ScrollView,里边加一个LinearLayout,在代码中动态加入控件,然后动态删除或者改变颜色,现在android有了新控件RecyclerView,可以方便的实现这样的功能,具体使用方法请参考这篇文章:Android 自定义RecyclerView 实现真正的Gallery效果 主要问题在于,我点击一个item,改变颜色,点击其他项,原创 2016-07-12 14:48:08 · 10412 阅读 · 4 评论 -
android ScrollView 滚动到顶部
有时候使用ScrollView,里边控件比较多的时候,打开界面,会滑到底部,如果要设置滑动到顶部,一般有两种方法 1.使用fullScrol(),scrollView.fullScroll(ScrollView.FOCUS_DOWN);滚动到底部scrollView.fullScroll(ScrollView.FOCUS_UP);滚动到顶部需要注意的是,该方法不能直接被调用 因为Android很原创 2016-07-15 15:41:10 · 18906 阅读 · 3 评论 -
列表包含checkBox错位以及选中事件
效果图: 列表项使用了ExpandableTextView,在上一篇博客中提到了用法和使用中遇到的坑:使用ExpandableTextView遇到的坑,在列表中,包含了checkBox,比较容易出现的问题就是在列表中,选中项会错位,原因参照资料:Android ListView CheckBox状态错乱。我在程序中使用了Map来保存是否选中的状态,第二个问题就是点击事件,如果写在setOnCh原创 2016-10-09 13:21:55 · 1722 阅读 · 0 评论 -
setResult(RESULT_OK) 返回0的原因
设置RESULT_OK,返回0,原因是我的测试代码写在onBackPressed方法里,按BACK键从一个Activity退出来的,一按BACK,android就会自动调用Activity的finish()方法,然后设置resultCode为RESULT_CANCELED,也就不会返回任何数据了 .解决方法就是在Activity里面捕获按BACK的事件,捕获到之后先setResult,然后自己来调用原创 2016-10-18 17:03:36 · 3770 阅读 · 0 评论 -
android fragment中 ScrollView嵌套ListView以及切换时scrollView显示底部的解决
fragment中,布局使用了scrollView嵌套ListView,listView会只显示一项,解决的办法是手动计算高度 //解决ScrollView嵌套ListView只显示一行 public void setListViewHeightBasedOnChildren(ListView listView) { // 获取ListView对应的Adapter原创 2016-12-08 16:28:08 · 2848 阅读 · 3 评论 -
android ScrollView嵌套ListView adapter的notifyDataSetChanged无效
首先,notifyDataSetChanged方法无效,一般是: 1、数据源没有更新,调用notifyDataSetChanged无效。 2、数据源更新了,但是它指向新的引用,调用notifyDataSetChanged无效。 3、数据源更新了,但是adpter没有收到消息通知,无法动态更新列表。说一个典型的例子:ArrayList list = new ArrayList();adapte原创 2016-12-29 21:27:48 · 1423 阅读 · 0 评论 -
android 获得ToolBar中title的间距以及获得控件宽高
效果图有个需求,要让ToolBar下方的控件与Title左对齐,这样就要得到Title距离左边屏幕的距离,然后在程序中设置setMargins,问题在于,ToolBar中没有获取Title间距的方法,至少我没找到,后来领导给了个解决方法,记录一下 代码贴一下toolbar.getViewTreeObserver().addOnGlobalLayoutListener(onGlobalLayoutL原创 2017-01-04 15:33:42 · 1555 阅读 · 0 评论 -
根据不规则效果图布局方法
美工有时候会给这样的效果图: 在效果图上标记准确的宽高或者间距,如果按照效果图上的标注布局,在不同屏幕上显示会出现差错,好的办法是在程序中,根据效果图和手机比例,计算出符合比例的值,然后动态设置布局 设置宽高或者边距的代码: /** * 自适应自动布局,具体意义参见UI设计原图。 */ private void autoLayout() {原创 2017-01-05 13:56:27 · 1097 阅读 · 0 评论 -
进入界面显示Dialog或者PopupWindow闪退的处理
进入界面,然后调用Dialog或者PopupWindow的show方法,会闪退,原因是当Activity.onCreate()等函数被调用时,界面与窗口管理服务的双向通信连接尚未建立,如果在此时构造弹出窗口则会抛出异常。因此,如果期望在界面组件展现之处便构造弹出窗口,可以将弹出窗口对象构造也转换成一个异步过程。 //进入界面就需要显示对话框,如果Activity没有创建完成,Activity还没完原创 2017-01-05 14:08:30 · 2621 阅读 · 0 评论