Android
Android开发技术总结与分享
大道至簡
大象无形,大道至简
展开
-
Android Content Provider Tutorial--安卓内容提供者系列5--Loader用法
Loaders(加载器)What’s a Loader?(什么是加载器)Loaders make it easy to load data asynchronously in an activity or fragment. Loaders have the翻译 2016-09-18 16:30:28 · 1074 阅读 · 0 评论 -
Android Content Provider Tutorial--安卓内容提供者系列4--如何创建内容提供者
Creating a Content Provider(如何创建一个ContentProvider)Content Provider Overview(ContentProvider概述)A content provider manages access to a翻译 2016-09-18 16:13:33 · 1109 阅读 · 0 评论 -
Android Content Provider Tutorial--安卓内容提供者系列3--操作安卓联系人
Accessing Contact Information (通过ContentProvider访问联系人信息)Objectives(学习目标)After this section, you will be able to:Describe the pri翻译 2016-09-18 15:57:28 · 1658 阅读 · 0 评论 -
Android Content Provider Tutorial--安卓内容提供者系列2--内容提供者用法
Using a Content Provider(如何使用Content Provider)Objectives(学习目标)After this section, you will be able to:通过这一部分的学习,你将能够:Write client翻译 2016-09-18 15:31:09 · 935 阅读 · 0 评论 -
Android Content Provider Tutorial--安卓内容提供者系列1--内容提供者介绍
在安卓系统默认的情况下,一个app是不能访问另一个app的数据的。这种基于沙盒的原则,是保护安卓系统安全的基石。但确实经常会有这样的需求:你想让一个app能分享一些数据给其他app。Content providers就是这样一个数据接口,能使数据在不同app之间共享。在这一部分学习中,您将学会如何设计和开发Content providers。下面是这部分学习的主题:翻译 2016-09-18 15:11:26 · 611 阅读 · 0 评论 -
Using Styles and Themes in Android(在Android中使用主题和样式)
Basics XML Attributes(基本的XML属性)If you’ve written an Android app, you’ve seen them. They look like this:如果你写过一个Android应用,那你一定见过他们。他们看起来像下面这样: android:layout_width="wrap_content"翻译 2016-09-02 16:07:29 · 1247 阅读 · 0 评论 -
如何设置listview 某个item不可点击,即没有背景变色的效果
要做到这一点,只需要在你写的adapter 类里复写 isEnabled(int position) 方法,然后在里面做你想做的即可:@Override public boolean isEnabled(int position) { if(position==0){ return false ;原创 2016-08-29 15:59:41 · 3501 阅读 · 0 评论 -
AndroidStudio 中如何导入和删除jar包
一、添加jar包的步骤:1、将jar包拷贝添加到 libs目录,libs文件夹在 app文件夹下(没有libs目录就自己手动创建个,app/libs )如图:2、然后再 右键单击项目,点击 Open Module Settings,在Dependencies中点“+”号,选择添加对应的jar文件,如图:这样就原创 2016-08-29 15:22:45 · 9487 阅读 · 0 评论 -
AndroidStudio 如何导入非gradle的第三方类库,也就是eclipse编的类库
在android开发中,为了保证开发效率,对于别人已经开发好的功能,我们经常直接拿来就用。比如从github上down下来别人的项目或者类库,由于我们现在大部分安卓开发者都是用AndroidStudio来开发,但github上确实还有很多经典的项目或类库是用eclipse编写的,而这些项目是不能直接导入到AndroidStudio的。本文的主要目的就是介绍了用AndroidStudio导入Ecli原创 2016-08-29 14:25:20 · 2826 阅读 · 0 评论 -
AndroidStudio中如何修改完整包名?
日常开发中,app包名一旦开始时确定下来基本上就不会再去修改了,可就是有人会心血来潮地想去改包名,那碰到这种需求,我们该如何快速的解决呢?毕竟在AndroidStudio的默认情况下, 修改包名只能修改最后一级名称如com.xxx.yyy,你只能修改yyy,而不好改前面的。 其实也不是不能改前面的,只不过稍微麻烦一点,参见下面的步骤:在 Project工具栏 点击 “齿轮” 按原创 2016-08-29 11:18:09 · 3057 阅读 · 1 评论 -
Enhancing Android UI with Custom Views 通过自定义view来让你的UI更屌!
能够构建自己的UI组件对你来说有很大的优势,比如你可以完全控制你的内容的显示样式。但成为一个自定义视图专家的最好理由之一,就是你将有能力使自己的视图层级结构变得扁平化。翻译 2016-08-31 09:41:20 · 1803 阅读 · 2 评论 -
在ActionBar中加入Back键或者其他功能
/*显示actionbar左侧的back键*/ActionBar actionBar = getActionBar();actionBar.setDisplayHomeAsUpEnabled(true);然后复写onOptionsItemSelected()方法,设置back键的点击事件。其中Android.R.id.home表示的是back键的id,你可以据此做自己想做的事。原创 2016-08-30 09:14:36 · 1022 阅读 · 0 评论 -
Android中nemu菜单的字体太小?如何设置actionbar中menu的text的size
Android实际开发中,我们常会用到actionbar,但其menu菜单的字体有时可能不是我们想要的大小,颜色不是我们想要的颜色,那么如何来设置actionbar中menu的text的size及color呢?通过以下几步就可以搞定:一、先到AndroidManifest.xml看看当前的theme是什么:比如我这里的是AppTheme<application .....原创 2016-08-26 16:34:33 · 8520 阅读 · 3 评论 -
android的actionbar的溢出菜单默认不显示图标icon,怎样弄成微信那样可以显示icon
大家都知道,android的actionbar的溢出菜单默认是不显示图标icon的,那么怎样弄成微信那样可以显示icon呢?答案是可以利用反射机制让隐藏在Overflow中的MenuItem显示Icon图标,代码如下:@Override public boolean onMenuOpened(int featureId, Menu menu) {原创 2016-08-26 15:55:28 · 2106 阅读 · 0 评论 -
Android截屏保存png图片的实例代码(去掉状态栏)
今天开发中遇到了android手机截屏的需求,以下是实现代码:这是截屏工具类:public class ScreenShot { // 获取指定Activity的截屏,保存到png文件 private static Bitmap takeScreenShot(Activity activity) { // View是你需要截图的View Vi原创 2016-08-26 15:13:27 · 3813 阅读 · 0 评论 -
android 开发button按下有震动怎样实现
android 开发常有这样的小需求:当Button按下时有震动,方法如下:在按钮按下事件onClick或者onTouch回调中加入下面这段代码即可产生震动效果,震动的节奏由参数里的long数组来控制,这个可以按自己的需求来定制Vibrator vibrator=(Vibrator)getSystemService(Service.VIBRATOR_SERVICE);vibrat原创 2016-08-26 14:28:45 · 4743 阅读 · 0 评论 -
Android按返回键程序仍在后台运行,并未完全退出和销毁,类似微信QQ等退出方式的实现-- moveTaskToBack
最近做的Android项目提了一个小的需求:按了返回键之后,要像微信和QQ那样,程序仍在后台运行,并未完全退出和销毁,下次进来仍然在之前那个页面。网上找到了解决方案,也很简单:其实就是重写按返回键的事件回调里加上一句代码:moveTaskToBack(false)@Override public boolean onKeyDown(int keyCode, KeyEve原创 2016-08-26 14:10:02 · 3553 阅读 · 0 评论 -
如何将资源文件夹raw里的文件路径转化成uri
在android编程时,常有一些视频或者音频等文件要放在资源文件夹raw里,在引用他们的时候,往往需要他们的uri。那么如何将资源文件raw文件夹里的文件路径转化成uri呢?用下面的代码就搞定了:String uriStr = "android.resource://" + context.getPackageName() + "/"+R.raw.money; Uri ur原创 2016-08-26 13:52:46 · 7305 阅读 · 1 评论 -
shareSDK的短信分享希望不包含图片,也就是不要变成彩信
在使用shareSDK做分享时,确实很方便,一句代码就可使将图片文字一起分享到各个渠道,但是也会有例外的要求,比如希望短信分享时不包含图片,因为变成彩信的结果会给移动联通更多的钱。通过咨询shareSDK的客服,他给出了这么一段代码,OnekeyShare oks = new OnekeyShare();...oks.setShareContentCustomizeCallback(new原创 2016-08-26 11:57:31 · 1329 阅读 · 0 评论 -
Android 开发中 如何使dialog 在按了返回键时 也不消失dismiss
Android 开发中 经常会有这样的小需求:比如在更新的时候,要使弹出来的进度dialog 在按了返回键时 也不消失dismiss。网上找了一些方法,比如在 你的自定义dialog的构造函数中 调用下面的代码OnKeyListener keylistener = new DialogInterface.OnKeyListener(){ public boo原创 2016-08-25 17:09:02 · 22303 阅读 · 0 评论 -
android studio manifest中权限添加了却没用?
android studio manifest中权限添加了却没用?有没有检查大小写呢?注意:这两种格式都不对:uses-permission android:name="android.permission.read_external_storage" />(全部小写,错!)uses-permission android:name="ANDROID.PERMISSION.READ_EXTE原创 2016-08-29 11:59:18 · 6292 阅读 · 0 评论 -
You need to use a Theme.AppCompat theme (or descendant) with this activity
一个小问题,顺手记录一下。今天做项目的时候,有个小小的需求,就是让一个activity运行但不显示界面出来,网上找了一下,方法很简单,只需要在你的清单文件中,将该activity的主题改成如下即可:android:theme="@android:style/Theme.NoDisplay"但是当我运行的时候,报了一个错误:You need to use a Theme.AppCom原创 2016-09-11 17:14:49 · 826 阅读 · 0 评论 -
ClassCastException:android.widget.ImageView cannot be cast to android.widget.RelativeLayout
今天写代码的时候碰到了一个莫名其妙的问题,半天找不到问题在哪。异常如下:ClassCastException:android.widget.ImageView cannot be cast to android.widget.RelativeLayout,一看到这个异常,肯定以为是没有做类型转换,或者转换错了,但我检查了一下代码发现,这两种情况都没有出现,代码是没有问题的!那到底为什么还是报这个异常呢?既然排除了代码的问题,那就只能是编译器可能出毛病 了,网上给的建议是手动编译一下试试。于是原创 2016-08-24 16:46:46 · 1356 阅读 · 0 评论 -
ERROR: In <declare-styleable> MenuView, unable to find attribute android:preserveIconSpacing
当用Eclipse编写Android app 时,sdk从低版本切换到高版本sdk的时候, v7包可能会报下面这个错误:ERROR: In MenuView, unable to find attribute android:preserveIconSpacing网上找到了解决方法,试了一下,确实可行: 点击V7包找到values文件夹,打开attrs.xml,找到原创 2016-08-24 17:52:35 · 1398 阅读 · 0 评论 -
Project 'LoveReaderActivity' is missing required library
当直接在libs目录下删除某个之前用过的jar包时,想编译会报missing的错误处理方法:到Project-->Properties,在这里把报错的库remove掉即可原创 2016-08-25 10:29:34 · 655 阅读 · 0 评论 -
IllegalArgumentException: AppCompat does not support the current theme feature
AndroidStudio 导入开源项目运行出现这样一个异常:IllegalArgumentException: AppCompat does not support the current theme feature,意思是appcompat 不支持当前的主题。 后来在stackoverflow上找到了解决方法: Make sure that your theme原创 2016-08-26 09:39:30 · 937 阅读 · 0 评论 -
ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_79\bin\java.exe'' finished with non-
开发中碰到这样一个异常:ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 2网上给的解决方法是:注意:如果删除之后还报,那就clean一下项目。本人亲测有效!另外这里还看到一个同类型的错原创 2016-08-26 10:04:34 · 8584 阅读 · 0 评论 -
【android studio】 the logging tag can be at most 23 characters
在用AndroidStudio编程时,有时候之前好好的Log语句突然全部报错:the logging tag can be at most 23 characters,was 27...意思是log(tag,"xxxx")的第二个字符串参数的长度最大不能超过23个字符。后来在stackoverflow上找到了解决方法,主要有以下两种:一、在build.gradle里原创 2016-08-26 10:33:52 · 1874 阅读 · 0 评论 -
No resource found that matches the given name: attr 'android:actionModeShareDrawable'.
在用AndroidStudio编程,引入v7包的依赖时,报了下面这个错误:No resource found that matches the given name: attr 'android:actionModeShareDrawable'.意思是没有找到 'android:actionModeShareDrawable'. 这个资源后来在stackoverflow中找到原创 2016-08-26 10:56:20 · 6032 阅读 · 0 评论 -
Unable to find optional library - org.apache.http.legacy
androidstudio开发时,突然报了这么个错误:Unable to find optional library - org.apache.http.legacy,但是我检查了gradle文件 里确实已经加了这个library,百思不得其解!最后网上找到一篇英文文章,从中找到了解决方法:原因是optional.json丢失了!自己复制了一个该文件丢到sdk相应文件夹里就原创 2016-08-26 11:34:07 · 1745 阅读 · 0 评论 -
Incorrect line ending: found carriage return (\r) without corresponding newline (\n)解决办法
在使用Eclipse编写android app时,有时代码没有问题的情况下,也会报出一些莫名其妙的问题,比如下面这个:Incorrect line ending: found carriage return (\r) without corresponding newline (\n)其实像这种非代码问题,基本上都是由于Eclipse本身不完善造成的,解决方法无非是先clean原创 2016-08-26 14:39:34 · 2182 阅读 · 1 评论 -
关于使用AsyncHttpClient做断点上传功能时无法回调进度的问题
在使用AsyncHttpClient做简单的非断点上传功能时,我们要想实时检测任务的开始、结束以及进度,需要实现AsyncHttpResponseHandler,并复写其各种onXXX()方法。 其中,在onProgress里,我们可以得到上传的进度。以上说的是简单上传,运行一点问题都没有。 可是当我按照服务端提供的接口做断点上传时,onProgress就不能正常的返回进度了。为了找出原因,我对两种情况的http请求都进行了抓包,发现原因出在http请求头里。在简单上传时,请求头里的"Content-Ty原创 2016-10-19 12:57:50 · 1606 阅读 · 2 评论 -
ScrollView和Fragment中的ListView、WebView滑动冲突问题的解决
日常开发中很少会碰到ScrollView中嵌套listview或webview的情况,而且谷歌官方也不推荐这么做,但是也不是一定不会有这样的需求,毕竟定需求的不是我们程序员,而是产品经理。比如像下面这种需求: 可以看到,整个页面有一个共同的头部,下面有两个tab,左边tab下是个可以滚动的webview,右边是个listview。要求listview和webvi原创 2017-06-02 10:54:36 · 2602 阅读 · 1 评论 -
android app调试没问题,但打包签名的apk,运行时出现闪退怎么办?
在用Eclipse编写android app时,有时调试时没有问题,但一经打包签名,运行就出现闪退,还报错说找不到某某类。一开始以为是混淆导致的,后来我没有混淆竟然也还是这个问题。无奈只得网上寻找解决方案,最终还是有人解决了的,方法也很简单,只需按照下面几步来就可以了:1.找到Project -> Build Automatically,取消它关闭自动编译2.然后Clean一下3.原创 2016-08-29 09:30:33 · 13986 阅读 · 3 评论