![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
文章平均质量分 74
RandomWrite
多看多写,不求甚解。
展开
-
Android 根据后台数据动态添加view
首先在activity的布局文件中添加一个LinearLayout装需要动态添加的view:activity_main.xml <LinearLayout android:id="@+id/ll_bottom" android:layout_width="match_parent" android:layout_height="wrap_content" android:minHeight="50dp" a..原创 2021-11-16 16:51:11 · 2422 阅读 · 0 评论 -
Android 压缩文件成ZIP并分享到微信
关于Android文件存储路径:参考:https://blog.csdn.net/u010937230/article/details/73303034/1、Environment.getDataDirectory() = /data这个方法是获取内部存储的根路径2、getFilesDir().getAbsolutePath() = /data/user/0/packname/files这个方法是获取某个应用在内部存储中的files路径3、getCacheDir().getAbsoluteP原创 2021-11-09 15:22:42 · 3110 阅读 · 2 评论 -
GreenDao的简单学习(附带demo源码)
先看效果图:添加实体:按条件查询实体:GreenDao 概述: 适用于Android的轻量级快速ORM框架,可将对象映射到SQLite数据库中,并且针对Andriod进行了高度的优化,greenDao提供了出色的性能,并占用了最少的内存。优点: 性能上:可能是Android上最快的ORM框架 易用性上:提供强大并且简洁明了的API 轻量:最小的内存消耗与小于150kb的库大小ORM:即Object-Relational-Mapping,它...原创 2021-11-09 13:14:24 · 3192 阅读 · 0 评论 -
将类似“¥1.5元”的文本中数字标红
效果:/** 将类似"¥ 1.5 元"的文本中的数字标红 或标蓝 或标绿*/ public CharSequence getContent(){ String input=text; if(input==null || input.isEmpty()) content=""; else if(content==null){ //"¥ *-?\\...原创 2020-04-04 14:25:13 · 261 阅读 · 0 评论 -
ScrollView 滑动停止监听
遇到一个需求,在ScrollView中设置一个按钮,滑动的时候隐藏,滑动停止之后1秒再重新显示出来。 由于ScrollView没有提供直接的监听方法,所以要自定义一个ScrollView;实现思路:创建Handler,在ScrollView滑动的时候,先清空所有消息,然后发送延时消息,如果能接收到消息,说明滑动停止,下面是具体实现的代码package app.view;impo...原创 2020-04-03 16:35:09 · 3776 阅读 · 0 评论 -
Android 判断APP当前的前台后台状态
public int mCount = 0;public static boolean isQiantai; public void regain() { registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() { @Override public void onActivityCreated(A...原创 2020-01-07 16:58:32 · 805 阅读 · 0 评论 -
Android EditText限制输入数字和字母
很多时候我们需要限制用户输入的类型甚至是内容,例如电话号码,限制inputType为number,昵称限制输入类型为text等等方法1:直接在代码中做限制String digists = "0123456789abcdefABCDEF";Edittext.setKeyListener(DigitsKeyListener.getInstance(digists));限制输入内容为0~...原创 2019-01-03 11:44:49 · 10788 阅读 · 0 评论 -
TextView限制行数,每行限制字符数
android:lines="2"表示限制2行;android:maxLength="8"表示限制8个字符;android:ellipsize="end"表示显示不全时使用省略号结尾;android:singleLine="true"表示限制单行显示;有些控件属性确实很容易忘记,做个笔记mark一下。...原创 2019-04-12 13:12:38 · 3280 阅读 · 1 评论 -
关于Listview中item点击失效问题解决
百度了一下这个问题,方案有很多,这里我就给出我自己的成功案例:我是使用descendantFocusability来解决的,descendantFocusability的API描述如下:android:descendantFocusabilityDefines the relationship between the ViewGroup and its descendants wh...原创 2019-04-12 15:45:24 · 322 阅读 · 0 评论 -
使用NanoHttpd在Android项目中搭建服务器
NanoHTTPD是一个免费、轻量级的(只有一个Java文件) HTTP服务器,可以很好地嵌入到Java程序中。支持 GET, POST, PUT, HEAD 和 DELETE 请求,支持文件上传,占用内存很小。github地址:https://github.com/NanoHttpd/nanohttpd。下载完demo项目后,解压,找到路径,我的是放在F盘下:F:\nanohttpd...原创 2019-04-15 11:26:23 · 15285 阅读 · 1 评论 -
OkHttp的坑:response.body().string() 只能调用一次
发现:在接微信登录时,通过构造OkHttpClient对象发起一次请求并加入队列,待服务端响应后,回调Callback接口触发onResponse()方法,然后在该方法中通过Response对象处理返回结果、实现业务逻辑。大致代码如下: private void getUserInfo() { String path = "https://api.w...原创 2019-09-02 11:34:34 · 1317 阅读 · 0 评论 -
Android切换语言程序闪退,需要避免Activity重启
搜索了一下相关的资料,http://blog.sina.com.cn/s/blog_629712650101a1o3.html 说是因为4.2中,app配置了configChanges locale属性后,当app处于后台,并没有finish时,如果改变语言,并不会在resume时调用Activity重写的onConfigurationChanged函数。原因是,4.2增加了一个layoutD...原创 2018-12-10 17:18:48 · 4497 阅读 · 2 评论 -
适配Android6.0到8.0详细过程——小白教程
前言:由于GooglePlay在2018年11月1日开始上架项目要求targetSdkVersion在26以上,因此只能版本适配了。我的项目版本是22,也就是Android5.1,之前也没有做过版本适配,只能一边查资料一边摸索着搞,如果有不对的地方,或者有更好的解决方案,欢迎联系指出!准备工作:要适配Android8.0首先要先把AndroidStudio升级到AndroidStudi...原创 2018-11-06 14:14:15 · 5001 阅读 · 0 评论 -
解决SwipeRefreshLayout+RecyclerView滑动冲突解决
sf_brand.setOnChildScrollUpCallback(new SwipeRefreshLayout.OnChildScrollUpCallback() { @Override public boolean canChildScrollUp(SwipeRefreshLayout parent, @Nullable View chi...原创 2018-10-11 17:38:26 · 1862 阅读 · 1 评论 -
Eclipse无法设置NDK路径的解决方法
在Eclipse的Preferences的Android下没有找到NDK的选项,没法设置NDK路径。下载一个com.android.ide.eclipse.ndk_23.0.2.1259578.jar 的jar包,复制到eclipse目录的“plugins”下面。如我的复制到"D:\eclipse-64\eclipse\plugins"这个目录下面,然后重启Eclipse就可以了。...原创 2018-06-06 18:11:16 · 885 阅读 · 0 评论 -
Dex Loader] Unable to execute dex: Multiple dex files define
最近在做sdk接入的时候,添加依赖库,发现出现下面这个错误:详细的异常信息:[2018-06-21 10:58:44 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/app/yjy/game/OneNineGame$1;[2018-06-21 10:58:44 - MergeFuse19sdk] Convers...原创 2018-06-21 14:24:18 · 711 阅读 · 0 评论 -
多线程,异步消息处理机制简单解析
当我们需要执行一些耗时操作,比如说发起一条网络请求时, 考虑到网速等其他原因,服务器未必会立刻响应我们的请求,如果不将这类操作方在子线程去运行,就会导致主线程被阻塞,从而影响用户对软件的正常使用。 比较简单的开启子线程的方法使用匿名内部类的方式:new Thread(new Runnable() { @Override public void run() { ...原创 2018-05-30 23:28:54 · 2197 阅读 · 0 评论 -
java.lang.NoClassDefFoundError 解决方案
今天接sdk的时候,在初始化sdk时失败,错误提示:06-2514:48:26.903: E/AndroidRuntime(1412): java.lang.NoClassDefFoundError:com.vivo.unionsdk.open.VivoUnionSDK原因:Java虚拟机在编译时能找到合适的类,而在运行时不能找到合适的类导致的错误,解决方案:把order and expo...原创 2018-06-25 18:48:26 · 3273 阅读 · 0 评论 -
Program type already present: android.support.v4.app.backstackrecord$Op
Program type already present:android.support.v4.app.backstackrecord$Op(程序类型已经存在:android.support.v4.app.backstackrecord$Op)调试过程中如果出现上述错误 最好的解决办法是把build.gradle文件中的下面部分:dependencies { implementation ...原创 2018-06-19 17:46:18 · 10178 阅读 · 3 评论 -
Eclipse 前进一步 快捷键 (eclipse实用快捷键)
我们在使用eclipse经常会用到后退一步快捷键 Ctrl+Z ,但是很容易就后退过头了,这个时候我们要前进一步。我在网上搜了一很久也没找到,最后还是问我同事才解决的。快捷键:Ctrl+ Y 前进一步常用快捷键:Ctrl+pageDown/Up浏览前后选项卡Ctrl+Q 定位到最后编辑Ctrl+W关闭当前EditerAlt+Shift+R重命名Ctrl + Y 前进一步Ctrl + Z 后退一...转载 2018-07-12 11:55:21 · 21271 阅读 · 2 评论 -
Android项目导成jar包
直接给操作流程,跟着走就可以了:首先选中项目中的java代码:右键选择Export,选择导出文件格式为JAR file:选择输出目录,并给导出的jar包命名:一直点Next直到Finish: 以上导出jar包操作为eclipse 的项目操作!注意:导出项目的资源文件,如res 、assets、libs等文件也需要复制到需要依赖这个jar包的项...原创 2018-07-18 14:45:45 · 616 阅读 · 0 评论 -
java.lang.ArrayIndexOutOfBoundsException 数组下标越界异常
异常部分代码:原因:代码中codenum_new为一个int类型,默认值为0,所以0-1之后为-1,而codeNumlist(一个List集合)的下标是从0开始的,也就是第一个参数的下标为0,当这里需要找到下标为-1的String时,就会报错。解决办法:在list集合的范围内取值,下标从0开始,并且不大于集合长度-1。...原创 2018-08-17 13:27:32 · 12638 阅读 · 0 评论 -
startActivityForResult() 实例简述
在启动另外一个Activity的时候,有两种方法:一种是直接使用startActivity,另外一种就是使用startActivityForResult。startActivityForResult的主要作用就是它可以回传数据 (1)startActivityForResult(Intent intent, int requestCode); 第一个参数:一个Inten...原创 2018-08-29 15:14:32 · 4768 阅读 · 2 评论 -
Android Dialog 生命周期
转自:https://blog.csdn.net/qizewei123/article/details/78232752#comments正文:Dialog的生命周期一共用以下6个方法: onCreate(),show(),onStart() ,cancel(),onDismiss(),Stop() 。 Dialog仅在在第一次启动时候会执行onCreate()方法(之后无论该Di...转载 2018-09-12 13:37:31 · 13269 阅读 · 0 评论 -
java中冒号(:)的用法
点击:原文链接今天看代码的时候看到了下面第一种冒号,没怎么看懂,于是上网找了下资料,转到博客做一个笔记吧。你见到的冒号是在哪个地方的,java中不同的地方的冒号的作用是不同的,例如:1、String[] abc = new String[3]{"a","b","c"};for (String str : abc){ System.out.println(str);转载 2018-01-04 15:37:38 · 26958 阅读 · 7 评论