在线Gif加载

解决办法

Glide完美解决

Glide.with(context).load(pic).placeholder(R.drawable.loading).into(imageView);

pic: url地址

R.drawable.loading: gif加载之前图片

imageView:目标imageview


Intent调用图库

使用L版本手机的时候,通过Intent调用图库,选择图片后出现”不支持的媒体类型”或者是”Failed to read row 0, column 6 from a CursorWindow which has 1 rows, 6 columns”。

由于对数据库这一款疏于了解,不能很快的定位出这个问题,首先想到的办法就是将出问题的文件不要暴露在用户眼前。

解决办法

Intent intent = null;
if (Build.VERSION.SDK_INT < 19)
{
intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
}
else
{
intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
}

不同的Android版本,选择系统图库中图片的方式有点差别,这个是需要注意的,Google不断更新API肯定是有原因的,所以,Android版本的兼容性问题是迭代开发和维护工作中不可避免的。单看代码是比较简单,但是当开发者不知道的时候,这个问题可能就会浪费很多时间。


AlertDialog获取PositionButton,NeturalButton 和 NegativeButton,一定要先调用show()方法

解决办法

dialog.show();//注意  必须先调用这个,否则下面会报空指针异常
if(xxxxx) { dialog.getButton(DialogInterface.BUTTON_NEGATIVE).setVisibility(GONE);
} else { dialog.getButton(DialogInterface.BUTTON_NEGATIVE).setVisibility(VISIBLE);
}

L版本上Toast无法显示

解决办法

  1. L版本上通知管理中,关闭了对应应用的通知权限,去“设置”-> “通知管理”中打开即可
  2. 避免因为权限问题导致Toast无法显示,可以尝试自定义完成类似Toast的功能


TextView走马灯

解决办法

TextView tv = new TextView(activity);
tv.setText("XXXXXXXXXXXX");
tv.setSingleLine(true);
tv.setEllipsize(TextUtils.TruncateAt.MARQUEE);
tv.setMarqueeRepeatLimit(-1);
tv.setFocusable(true);
tv.setFocusableInTouchMode(true);
tv.setHorizontallyScrolling(true);
tv.requestFocus();

使用系统ACTION_SEND 发送文字或者图片

解决办法

发送文字

String message = "This is a sharing Text";
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
shareIntent.putExtra(Intent.EXTRA_TEXT, message);
this.startActivity(shareIntent);

发送图片

/* localqrcode是一个bitmap对象*/
String pathofBmp = Images.Media.insertImage( activity.getContentResolver(), localqrcode,
"title", null);
Uri bmpUri = Uri.parse(pathofBmp);//获取本地Uri
Intent intent= new Intent( android.content.Intent.ACTION_SEND);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(Intent.EXTRA_STREAM, bmpUri);//流类型
intent.setType("image/png");
activity.startActivity(intent.createChooser(intent, "选择"));

调用系统资源

解决办法

/*
获取导航栏高度
*/
private int getNavigationBarHeight() {
boolean hasNavigationBar = getResources().getBoolean(Resources.getSystem().getIdentifier("config_showNavigationBar", "bool", "android"));
if(hasNavigationBar) {
return getResources().getDimensionPixelSize(Resources.getSystem().getIdentifier("navigation_bar_height", "dimen","android"));
}
return 0;
}

通过

Resources.getSystem().getIdentifier(“config_showNavigationBar”, “bool”, “android”));

这类方式获取ID,然后通过正常的资源使用方式使用即可

Okhttp异常

Okhttp异常:

System.err: java.lang.IllegalStateException: closed

System.err: at okio.RealBufferedSource.rangeEquals(RealBufferedSourc

System.err: at okio.RealBufferedSource.rangeEquals(RealBufferedSourc

System.err: at okhttp3.internal.Util.bomAwareCharset(Util.java:397)

System.err: at okhttp3.ResponseBody.string(ResponseBody.java:173)

解决办法

Response response = okHttpClient.newCall(request).execute();

这里返回的response一般我们后面就会执行response.body().string(),

但是如果连续调用两次response.body().string(),就会出现如上的错误


actionBar.setDisplayHomeAsUpEnabled(true);后如何修改返回图标

解决办法

actionBar.setHomeAsUpIndicator(R.drawable.__picker_back);


toolbar上menu的标题字体颜色如何修改

解决办法

style.xml文件中添加<item name="actionMenuTextColor">#ffffff</item>


WebView无法显示图片

解决办法

      webView.getSettings().setBlockNetworkImage(false);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
webView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
}

Unable to execute dex: method ID not in [0, 0xffff]: 65536

解决办法

Eclipse: dex.force.jumbo=true

Android Studio : multiDexEnabled true

Android开发问题积累 <加载在线Gif><WebView无法加载网页图片>的更多相关文章

  1. Android 开发日常积累

    Android 集合 Android 开源项目分类汇总 扔物线的 HenCoder 高级 Android 教程 hencoder HenCoder:给高级 Android 工程师的进阶手册 Andro ...

  2. android开发(29) 自定义曲线,可拖动,无限加载

    项目需要 做一个曲线,该曲线的数据时不断加载的.如下图,当不断向左拖动时,图形曲线要随着拖动移动,并在拖动到边界时需要加载更多数据. 先看步骤: 1.在Activity里放一个surfaceView ...

  3. 《ArcGIS Runtime SDK for Android开发笔记》——(12)、自定义方式加载Bundle格式缓存数据

    随着ArcGIS 10.3的正式发布,Esri推出了新的紧凑型缓存格式以增强用户的访问体验.新的缓存格式下,Esri将缓存的索引信息.bundlx包含在了缓存的切片文件.bundle中.具体如下图所示 ...

  4. Android开发学习总结(四)——Eclipse在线安装ADT插件

    要想使用Eclipse开发Android应用,首先要安装一个ADT插件,在此记录一下在Eclipse中采用在线安装的方式ADT插件,我使用的Eclipse版本是:eclipse-jee-luna-SR ...

  5. android开发之网络棋牌类在线游戏开发心得(服务器端、Java) 好文章值得收藏

    标签: android服务器 2013-10-09 17:28 3618人阅读 评论(0) 收藏 举报 分类: android(11) 转自:http://blog.csdn.net/bromon/a ...

  6. 《ArcGIS Runtime SDK for Android开发笔记》

    开发笔记之基础教程 ArcGIS Runtime SDK for Android 各版本下载地址 <ArcGIS Runtime SDK for Android开发笔记>——(1).And ...

  7. 【转】Android开发笔记(序)写在前面的目录

    原文:http://blog.csdn.net/aqi00/article/details/50012511 知识点分类 一方面写写自己走过的弯路掉进去的坑,避免以后再犯:另一方面希望通过分享自己的经 ...

  8. [置顶] Android开发百科全书

    友情提示根据目录 快速查找问题 %1$s %1$d Android string 1.整型,比如"我今年23岁了",这个23是整型的.在string.xml中可以这样写,<s ...

  9. 《ArcGIS Runtime SDK for Android开发笔记》——(11)、ArcGIS Runtime SDK常见空间数据加载

    ArcGIS Runtime SDK for Android 支持多种类型空间数据源.每一种都提供了相应的图层来直接加载,图层Layer是空间数据的载体,其主要继承关系及类型说明如下图所示: 转载请注 ...

随机推荐

  1. 使用git时出现Please make sure you have the correct access rights and the repository exists.问题已解决。

    使用git时,出现Please make sure you have the correct access rights and the repository exists.问题已解决. 今天我在使用 ...

  2. 【bzoj4712】洪水 动态dp

    不难发现此题是一道动态$dp$题 考虑此题没有修改怎么做,令$f[i]$表示让以$i$为根的子树被覆盖的最小花费,不难推出$f[i]=min(\sum_{j∈son[i]} f[j],val[i])$ ...

  3. django框架--视图系统

    目录 一.视图函数的理解 二.视图函数的定位 三.请求对象HttpRequest 四.响应对象HttpResponse 一.视图函数的理解 视图函数的作用是,对指定的url执行业务逻辑,视图函数将会作 ...

  4. (转)AIX的Dump文件学习笔记

    原文:http://czmmiao.iteye.com/blog/1144999 DUMP文件概述 为了增强故障分析能力,IBM的服务器增加了对设备故障当前环境的保存功能,就是保存一份设备故障时的内存 ...

  5. Centos7 nginx安装过程

    一.Centos版本: cat /etc/centos-release CentOS Linux release 7.1.1503 (Core) 二.nginx下载 官网:http://nginx.o ...

  6. 第7章—SpringMVC高级技术—不用web.xml,而使用java类配置SpringMVC

    不用web.xml,而使用java类配置SpringMVC DispatcherServlet是Spring MVC的核心,按照传统方式, 需要把它配置到web.xml中. 我个人比较不喜欢XML配置 ...

  7. javac之BridgeMethod及泛型擦除重写

    When compiling a class or interface that extends a parameterized class or implements a parameterized ...

  8. 共识算法:Paxos

    两阶段提交 Two-phase Commit(2PC):保证一个事务跨越多个节点时保持 ACID 特性: 两类节点:协调者(Coordinator)和参与者(Participants),协调者只有一个 ...

  9. 3-nginx.conf参数配置

    –#定义Nginx运行的用户和用户组 –user www www; –#nginx进程数,建议设置为等于CPU总核心数. –worker_processes8; –#全局错误日志定义类型,[ debu ...

  10. 基于Java的简易表达式解析工具(二)

    之前简单的介绍了这个基于Java表达式解析工具,现在把代码分享给大家,希望帮助到有需要的人们,这个分享代码中依赖了一些其他的类,这些类大家可以根据自己的情况进行导入,无非就是写字符串处理工具类,日期处 ...