编程中问题解决方案
张小贝_
github地址:https://github.com/beibeiMary
展开
-
Android读取文件时,由byte转成String字符串时出现乱码
先看看出乱码的代码 public static void getInfo(Context context) { try { FileInputStream fileInputStream = context.openFileInput("hpPortal.txt"); byte[] bytes = new byte[1024]...原创 2018-09-14 16:04:08 · 5579 阅读 · 0 评论 -
Eclipse项目导入到Android Studio时遇到的错误Error: java.util.concurrent.ExecutionException: com.android.ide.comm
把eclipse项目导入AndroidStudio,结果报错了。错误:Error:Execution failed for task ':app:mergeDebugResources'. > Error: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException:原创 2017-09-25 16:23:34 · 2122 阅读 · 0 评论 -
android jar包下载地址
最近做项目用到很多jar包,但是去网上下载的时候有时候很麻烦,所以将自己下来的jar包传到了github上,希望今后再用自己也方便,大家有需要的也可以去看看,如果其中有你想要的可以省很多时间。https://github.com/beibeiMary/AndroidJarALL上面的链接可以直接访问查看。原创 2017-08-25 14:08:56 · 14891 阅读 · 1 评论 -
@SuppressLint("NewApi")从何而来
在Android代码中,我们有时会使用比我们在AndroidManifest中设置的android:minSdkVersion版本更高的方法,此时编译器会提示警告,解决方法是在方法上加上@SuppressLint("NewApi")或者@TargetApi()。那他们之间有什么区别呢,很简单,@SuppressLint("NewApi")屏蔽一切新api中才能使用的方法报的andr原创 2017-06-15 17:01:29 · 834 阅读 · 0 评论 -
新闻的离线下载功能仿网易之(二) 带缓存的功能实现
上次是单一频道的离线下载,这次要做更难一点儿的默认频道下载,包括后期的未加载页面的缓存和获取接口如下按照上面的接口解析时处理的比较复杂,相当于自己解析了两层之后再调用的gson解析,看代码private DownNonet downNonetbean; private HttpInstance httpInstance; private List downDetai原创 2017-06-22 16:56:33 · 624 阅读 · 0 评论 -
handler.postDelayed循环倒计时
int time = 120; handler.postDelayed(new Runnable() { @Override public void run() { tv_record_time.setText(time + "s");原创 2017-06-29 11:16:17 · 1983 阅读 · 0 评论 -
Edittext设置身份证输入格式
ad_edit2.setKeyListener(new NumberKeyListener() { @Override public int getInputType() { return android.text.InputType.TYPE_CLASS_PHONE; } @Override protected char[] getA原创 2017-06-19 14:40:56 · 1369 阅读 · 0 评论 -
Logger之Logger.getLogger(CLass)
之前一直在使用System.out.println()来调试.但是用这种方式开发项目部署到生产环境,会因为众多的控制台输出降低应用的性能.这时候Log4J就成为可平衡开发和部署应用的利器了. 在项目中使用Log4J并不是一件困难的事情,简单粗暴的方式就是在每个类A中声明一个Logger私有属性[html] view plain copy转载 2017-05-18 11:56:15 · 1291 阅读 · 0 评论 -
Android小红点儿数量提示
如上图所示,在做某些应用的时候会遇到这样的需求,需要给出消息的提示,消息可以用推送方式收取,也可以通过接口获取,在这里记录一下开发中这种小红点提示怎样写首先看下布局文件<LinearLayout android:layout_width="match_parent" android:layout_height="@dimen/pad_height_50"原创 2017-05-27 11:16:52 · 1795 阅读 · 0 评论 -
Android中ListView与CheckBox结合----多选与记录
在实际项目中用到了这个功能,所以查了众多同行的帖子,,发现这位小伙伴的最符合我的需求,所以转载过来。实际应用中我还加入了一些个人的特殊处理,如果有问题大家可以在评论区留言交流。很多时候我们会用到ListView与CheckBox结合的东西,比如一个清单,可以用来多选,但是很多人似乎也在这个地方遇到很多问题,我刚开始学的时候也是遇到假选问题,当列表中数量多的之后,我勾转载 2017-04-25 14:20:25 · 424 阅读 · 0 评论 -
webview不能访问https的链接
在做项目的时候遇到了webview怎么也访问不来https的接口,找了半天原因,上网查了帖子才知道,现在把原因分析写出来,和解决办法,让大家以后尽量避免这样的问题。在Android中,WebView是用来load http和https网页到本地应用的控件。在默认情况下,通过loadUrl(String url)方法,可以顺利load诸如,http://www.baidu.com之类原创 2017-05-04 15:19:56 · 6848 阅读 · 1 评论 -
Dialog默认背景的修改-切换日夜模式的Dialog背景
先上代码class AlertClickListener implements OnClickListener { @Override public void onClick(View v) { boolean checkedd = (Boolean) SpUtils.get(SettingActivity.this, "night_day", false); Builde原创 2017-05-04 14:59:52 · 1958 阅读 · 1 评论 -
用自定义Fragment做布局引用的时候报错
遇到了这个问题,报了两个错误,工具是android studio第一个Binary XML file line #8: Must specify unique android:id, android:tag, or have a parent with an id fo……解决方案是在引用的fragment上添加id<fragment android:i原创 2017-05-23 17:35:43 · 1259 阅读 · 0 评论 -
仿今日头条的夜间模式
前段时间查资料,为自己的新闻项目做过一个仿今日头条的夜间模式效果,经过一段时间的测试,发现现在效果的状态已经和今日头条的相差无几。虽然不知道方式是不是一样,但效果至少出来了。下面把自己的核心代码和方式贴出来,希望能给更多的人提供帮助和启发。首先上一下效果图上两张图是做后的效果,总体原理是在Sharepreference中存储isnight是否是夜间模式的状态,在每一次改变Tog原创 2017-05-11 14:51:18 · 3625 阅读 · 2 评论 -
在代码中为ImageView引用图片之setImageDrawable和setBackgroundResource
在做项目的时候遇到了这个问题,虽然是一个小知识点,但还是值得记录一下。首先说,在布局文件中Imageview用的src引用图片。想在代码中对控件的图片进行修改,于是最开始选择的是setBackgroundResource,但是发现图片是平铺的,效果并不是理想的。于是用的setImageDrawable(getResources().getDrawable()但是发现在5.1中是过期的。后面再说原创 2017-04-06 15:29:04 · 36773 阅读 · 0 评论 -
带混淆的Eclipse项目导入Android Studio时报错Error:(16, 0) User supplied default proguard base extension name is
带混淆的Eclipse项目导入Android Studio时报错Error:(16, 0) User supplied default proguard base extension name is unsupported. Valid values are: [proguard-android.txt, proguard-android-optimize.txt]gradle原创 2017-09-25 16:39:21 · 1221 阅读 · 0 评论 -
关于应用的Splash启动页
综合了许多splash的写法,也看过有的splash写法会出现一些空白页等问题。在此处给大家贴一下我的这个demo中的splash页,有问题大家可以留言沟通,希望能给大家带来 帮助。项目地址:https://github.com/beibeiMary/NewsApplication-Demo.git项目片段首先创建一个handler类public class Splashhandl原创 2017-09-22 10:54:55 · 1727 阅读 · 0 评论 -
关于返回键的问题
一、Android 主界面按返回键不退出而是置后台; moveTaskToBack(false);分析: activity里有这个方法,具体如下: public boolean moveTaskToBack(boolean nonRoot) { try { return ActivityManagerNative.getDefault().mov...原创 2018-08-23 10:41:04 · 613 阅读 · 0 评论 -
解决WebView原生无法添加附件的问题
原生webview,不调用系统浏览器,使用webview自带浏览器,需要重写setWebViewClient方法 webview.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, St...原创 2018-08-16 10:51:34 · 538 阅读 · 0 评论 -
关于Android Studio升级至3.1出现AAPT2 error的解决办法
原文链接:https://www.jianshu.com/p/2a63c5710ee9然后就是漫长的百度之旅,看了几十个办法其实大同小异,大家都是互相引用,3个方法例举如下:1:Android Studio 3 Gradle插件报错:AAPT2 error: check logs for details在gradle.properties中加入一行代码:android.enableAapt2=fa...转载 2018-06-20 14:45:18 · 4063 阅读 · 0 评论 -
android studio so包 java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol 问题
原因: AndroidStudio生成so时,由于compileSdkVersion、targetSdkVersion版本过高,与ndk版本不匹配。 ndk生成的so是向上兼容的,而不是向下兼容。所以目前只能降低编译生成so的版本。。。。解决办法: 主要就是修改build.gradle文件下的targetSdkVersion,小于23就可以,其他的不需要原创 2018-02-01 15:48:25 · 6218 阅读 · 0 评论 -
Android开发之常用代码片段
1、设置窗口格式为半透明getWindow().setFormat(PixelFormat.TRANSLUCENT);2、Android中在非UI线程里更新View的不同方法:* Activity.runOnUiThread( Runnable )* View.post( Runnable )* View.postDelayed( Runnable, lon转载 2017-12-22 14:45:23 · 251 阅读 · 0 评论 -
eventBus混淆代码
项目中应用了eventBus,打包时总出错或者闪退。在网上找了三四种,都不好用,最后还是使用了官方文档的混淆代码。现在将代码贴出来,方便大家使用。-keepattributes *Annotation*-keepclassmembers class ** { @org.greenrobot.eventbus.Subscribe ;}-keep enum org.green原创 2017-10-26 16:54:29 · 902 阅读 · 0 评论 -
Android Studio报错usage of API documented as @since 1.8
代码中应用了next()方法,报错,导的包是import static java.time.temporal.TemporalAdjusters.next;原因应该是document的API的问题,最简单的解决方法:找到model的gradle文件,在其中添加compileOptions { sourceCompatibility = "1.8"原创 2017-10-26 16:51:40 · 735 阅读 · 0 评论 -
Error:(15, 21) No resource found that matches the given name: attr 'android:keyboardNavigationCluste
android No resource found that matches the given name attr的一种解决办法总的原则:用于编译的SDK的版本 >= 所用支持库的版本,如用了下面的库:[java] view plain copycompile 'com.android.support:d原创 2017-10-23 16:32:27 · 13959 阅读 · 0 评论 -
cantnot find the declaration of element 'LinearLayout'报错和android studio项目没有sdk
今天遇到这个问题,开始是布局出错,以为是配置问题,或者自己写的问题,在网上搜了一下,没有找到合理的解决办法。如下图所示还有这样后来查配置发现没有问题,打开原来做好的项目也会出现这样的错误。于是决定新建个项目试试新建项目的时候是这样子的。于是查看发现缺少SDK设置和SDK的目录,查资料发现原来是Android Studio 插件Plug原创 2017-10-23 15:58:10 · 7822 阅读 · 0 评论 -
android 屏幕保持唤醒 不锁屏 android.permission.WAKE_LOCK
In AndroidManifest.xml 加上权限: 方法一:public class UnLockActivity2 extends Activity {/** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) {super转载 2017-11-08 17:20:32 · 11481 阅读 · 1 评论 -
开机广播RECEIVE_BOOT_COMPLETED、开机自启动服务
原来,在3.1之后,系统的PackageManager增加了对处于“stopped state”应用的管理,这个stopped和Activity生命周期中的stop状态是完全两码事,包管理器中的stopped state指的是安装后从来没有启动过或者是被用户手动强制停止的应用。这点大家可以到“设置”——>"应用程序",查看任何一个安装的应用,看看“强行停止”这个按钮是否变灰就知道了。转载 2017-11-08 17:10:52 · 16429 阅读 · 0 评论 -
AndroidManifest 中original-package标签
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.superdeskclock"> Manifest.xml 中 标签中package属性用于设置原创 2017-11-08 15:46:11 · 2373 阅读 · 0 评论 -
自定义控件dialog的重要部分代码修改字体为例
int charactersize = (Integer)SpUtils.get(SettingActivity.this, "fontSize", -1); if (charactersize==1) { tv_textsizeshow.setText("小"); }else if (charactersize==2) { tv_textsizeshow.setText("中原创 2017-11-08 11:07:19 · 414 阅读 · 0 评论 -
minSdk(API 26) > deviceSdk(API 17)
运行一个开源的项目出现“minSdk(API 26) > deviceSdk(API 17)”的提示,因为我用的是手机是sdk(API17)的,而项目要求是最低版本是minSdk(API 26),在我的测试机上面是不能运行的解决:一、也就是最低版本是sdk17及以下,点开了build.gradle,将里面的minSdk改成17或者小于17即可。注意点:如果项目中用到原创 2017-10-20 11:21:18 · 3723 阅读 · 0 评论 -
关于新闻类android应用webview缓存的功能需求
在做新闻类应用的时候有一个这样的需求,要在读取一条新闻的时候,要缓存接下来的三条内容,当这个时候断网了, 这四条新闻要求都是可以离线阅读的。虽然最后做出来了,但总觉得方法太笨重,不知道还有没有更好的方法,希望有更好方法的各位大神们,走过路过给个思路~十分感谢。先说说我这个笨重的解决思路吧。受先看看xml文件布局<RelativeLayout xmlns:android="原创 2017-04-05 17:42:54 · 1102 阅读 · 0 评论 -
新闻的离线下载功能仿网易之(一) 基本功能实现
首先说一下这个功能的功能点第一点,像网易新闻一样,用户在登录和未登录情况下都可以离线下载新闻。第二点,用户的离线下载最多固定10个频道,每个频道的第一页。第三点,用户下载后的新闻在无网情况下可以直接查看。这里初步完成以上三种功能,所用的方法和思路如下 :一,从服务器的接口中获取json数据并解析二,将解析出来的新闻的url串遍历通过io流存储到文件三,用webview打原创 2017-04-11 16:09:29 · 1023 阅读 · 0 评论 -
解决异常“android.view.InflateException Binary XML file line # Error inflating class
做项目的时候遇到了这种异常情况,找网上的解决方案后成功解决了,1.XML中使用到得组件名称是否书写正确(包名+类名),可以使用crtl+鼠标点击看能不能跳转到该组件的定义的地方,可以的话就不是这个问题,如果不可以的话,就是这个问题2.抛出异常时的main.xml与自定义View类相关代码如下:就是自定义的组件中的构造方法有没有书写正确main.xml原创 2016-12-12 19:01:39 · 1586 阅读 · 0 评论 -
textview最多显示3行点击事件展开显示全部
给textview设置一个默认值,让其最多显示三行,当点击按钮的时候全部展开显示, tv_person_jieshao_more.setOnClickListener(new OnClickListener() { Boolean flag = true; @Override public void onClick(View v) { if (flag) {原创 2016-12-13 15:03:26 · 6586 阅读 · 0 评论 -
关于对adapter中的按钮进行点击传数据回activity的方法
首先,在adapter类中声明一个接口,使用接口回调进行点击事件的回传private SubClickListener subClickListener;在adapter中对按钮进行点击事件监听,并通过接口方法回传数据holder.ibtn_button.setOnClickListener(new OnClickListener() { @Override public原创 2016-12-13 15:12:51 · 7747 阅读 · 0 评论 -
带蒙版效果的圆形图标
今天要做的项目里有这样一个图片需求:代码如下: <RelativeLayout android:id="@+id/rl_icon_download" android:layout_width="@dimen/pad_height_62" android:layout_height="@dimen/pad_height_62"原创 2016-12-13 16:31:57 · 2193 阅读 · 0 评论 -
在adapter中对item的某个控件点击,并在点击事件中对其他item控件进行设置
今天做项目的时候遇到了这个问题,现在将解决方案的代码记录下来,以便大家遇到同样的问题时能够方便处理。 final TextView tv_state = holder.tv_download_state; holder.img_stop.setOnClickListener(new OnClickListener() { @Override public void onClic原创 2016-12-14 15:22:05 · 3347 阅读 · 0 评论 -
listview的itemonclick在某种情况下点击无效
今天在做项目的时候遇到了这样的问题,先上界面图在点击编辑按钮的时候会对列表进行状态改变下面看一下代码package com.hipad.classroom.activity;import java.util.ArrayList;import java.util.ListIterator;import org.json.JSONObject;import c原创 2016-12-16 13:47:54 · 2036 阅读 · 0 评论 -
viewpager切换fragment时崩溃问题
先看报错信息经过排查,点击tab切换的时候没发现这个问题,滑动viewpager的时候出现了这个问题,所以应该是viewpager滑动监听时候的问题。最后问题定位 public OnPageChangeListener pageListener = new OnPageChangeListener() { @Override public void onP原创 2016-12-30 14:39:48 · 3055 阅读 · 0 评论