![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
文章平均质量分 78
chenguang79
现代社会的民工。不同的在于,我是用代码来建设虚拟的城市。
展开
-
如何优雅解决App启动黑白屏
为什么会有黑白屏在桌面点击应用图标后,在app进程没有创建的情况下,需要时间创建app进程,初始化资源,以及启动首页Activity的(这里讨论的首页是指AndroidManifest里面标志的启动页),这就意味点击图标不能马上看到启动页。为了不让用户有卡顿的感觉,谷歌有了Preview Window,在启动页没有绘制完成时,会先初始化一个Window,我们通常看到的黑屏或白屏,就是这个预览窗...转载 2020-01-06 10:29:04 · 2831 阅读 · 0 评论 -
android中的组件化的简单使用
android组件化已经被广泛应用了,它的好处这里就不多说了,这里只是简单的做组件化的过程做一个简单的使用说明,以备之后使用时做为参考。准备工作:我们在使用组件化的时候,必然会涉及到组件之间的跳转与传值,这个我们要使用阿里的ARouter。我们先去https://github.com/alibaba/ARouter上了解一下ARouter,并查看一下它的最新版本一、建立项目,我们新建一个mo...原创 2019-12-23 11:33:08 · 1317 阅读 · 0 评论 -
android使用service在后台下载更新
看了https://blog.csdn.net/baidu_34928905/article/details/88388082的文章,感觉不错,就自己试了一下,现在把代码放出来,以备后用在使用时,我们先要做的准备是一、权限 在AndroidManifest.xml中加入<!-- 允许访问网络 --> <uses-permission android:name="an...原创 2019-12-17 15:14:46 · 2257 阅读 · 0 评论 -
Android代码重构之-优雅的解决顺序调用方法之间的耦合
转自看到一篇非常好的文章,这里留个记录,感谢作者的分享git地址背景before:在我们APP启动过程,我们可能常常有这样的需求:在APP第一次进入的时候根据网络请求的结果弹一个对话框式的广告, ok~ 很简单,那么代码大致就是这样(这边都是伪代码,为了方便理解): @Override protected void onCreate(@Nullable Bundle sav...转载 2019-11-28 13:36:18 · 782 阅读 · 0 评论 -
Paint中SumPathEffect的简单使用
SumPathEffect是pathEffect的六个子类中最后一个了,光看名字也知道它也是一种,将两种PathEffect组合使用的类,它和ComposePathEffect的区别在于,ComposePathEffect是将两个子类进行组合,让你看到的是组合后的样子,而且SumPathEffect则是将这两个子类全的效果全显示出来,然后叠加在一起。好,话不多说,直接上代和图:public cl...原创 2019-10-15 09:09:27 · 767 阅读 · 0 评论 -
Paint中DiscretePathEffect的简单使用
DiscretePathEffect这个子类,说实话,我是真心没整明白,在什么地方能用到,它给人的感觉是一种毛刺的效果,下方面是它的方法 public DiscretePathEffect(float segmentLength, float deviation) { native_instance = nativeCreate(segmentLength, deviati...原创 2019-10-15 08:46:01 · 885 阅读 · 1 评论 -
Paint中PathDashPathEffect的简单使用
今天来了解一下PathDashPathEffect的简单使用,PathDashPathEffect与DashPathEffect的功能很像,不一样的就是它中间的实线部分,可以是我自定义的图形。看一下,方法public PathDashPathEffect(Path shape, float advance, float phase, S...原创 2019-10-14 10:38:26 · 1902 阅读 · 0 评论 -
Paint中ComposePathEffect的简单使用
在前面,我们认识了PathEffect的两个子类,现在我们来认识一下第三个子类ComposePathEffect,它就很有意思了,它是把两个子类的效果连在一起。记住是两个,不能多了。它是方法是public ComposePathEffect(PathEffect outerpe, PathEffect innerpe) { native_instance = nativeCrea...原创 2019-10-12 13:52:02 · 805 阅读 · 1 评论 -
GitHub Android 开源项目汇总
GitHub 上的开源项目不胜枚举,越来越多的开源项目正在迁移到GitHub平台上。基于不要重复造轮子的原则,了解当下比较流行的Android与iOS开源项目很是必要。利用这些项目,有时能够让你达到事半功倍的效果。1. ActionBarSherlock(推荐)ActionBarSherlock应该算得上是GitHub上最火的Android开源项目了,它是一个独立的转载 2013-05-10 08:49:28 · 1375 阅读 · 0 评论 -
Android permission 访问权限大全
程序执行需要读取到安全敏感项必需在androidmanifest.xml中声明相关权限请求, 完整列表如下:android.permission.ACCESS_CHECKIN_PROPERTIES允许读写访问”properties”表在 checkin数据库中,改值可以修改上传( Allows read/write access to the “properties” table in t转载 2013-07-09 11:26:31 · 1173 阅读 · 0 评论 -
解决Android手机 屏幕横竖屏切换
Android中当屏幕横竖屏切换时,Activity的生命周期是重新加载(说明当前的Activity给销毁了,但又重新执行加载),怎么使屏幕横竖屏切换时,当前的Activity不销毁呢?1. 在AndroidManifest.xml中为Activity设置configChanges属性,application android:icon="@drawable/icon" androi转载 2013-07-12 10:22:18 · 1249 阅读 · 0 评论 -
android获取屏幕宽高与获取控件宽高
获取屏幕宽高// 获取屏幕宽高(方法1)int screenWidth = getWindowManager().getDefaultDisplay().getWidth(); // 屏幕宽(像素,如:480px)int screenHeight = getWindowManager().getDefaultDisplay().getHeight(); // 屏幕高(像素,如:800p)Lo原创 2013-07-02 10:50:40 · 62628 阅读 · 8 评论 -
Android取消EditText自动获取焦点默认行为
在项目中,一进入一个页面, EditText默认就会自动获取焦点,很是郁闷,Android 如何让EditText不自动获取焦点?于是搜集整理一番,晒出来和大家分享,希望对你们有所帮助在项目中,一进入一个页面, EditText默认就会自动获取焦点。 那么如何取消这个默认行为呢? 在网上找了好久,有点 监听软键盘事件,有点 调用 clearFouse()方法,但是测试了都没有! x转载 2013-08-01 16:51:29 · 3247 阅读 · 0 评论 -
android RelativeLayout 内容居中解决办法
android RelativeLayout 内容居中解决办法:使用Linearlayout本来利用父控件的gravity属性是很好解决的。但是对应RelativeLayout虽然有gravity属性,但是如果你使用,你会发现实际他是不能生效的。解决办法:在RelativeLayout的子空间里,使用以下3个属性就行了。转载 2013-07-29 16:38:01 · 28850 阅读 · 2 评论 -
android之ConnectivityManager简介,网络连接状态
/** * 测试ConnectivityManager * ConnectivityManager主要管理和网络连接相关的操作 * 相关的TelephonyManager则管理和手机、运营商等的相关信息;WifiManager则管理和wifi相关的信息。 * 想访问网络状态,首先得添加权限 * NetworkInfo类包含了对wifi和mobile两种网络模式连接转载 2013-08-22 15:11:41 · 1354 阅读 · 0 评论 -
android:scaleType属性
android:scaleType是控制图片如何resized/moved来匹对ImageView的size。ImageView.ScaleType / android:scaleType值的意义区别:CENTER /center 按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示CENTER_CROP / centerCrop 按转载 2013-08-30 14:57:14 · 900 阅读 · 0 评论 -
Android 用webService产生java.lang.ClassCastException: org.ksoap2.serialization.SoapPrimitive错误的解决
在做android Webservice开发的时候一般情况下大家接受webservice服务器返回值的时候都是使用SoapObject soapObject = (SoapObject) envelope.getResponse();这个来接受返回来的值,但这种方法往往会产生java.lang.ClassCastException: org.ksoap2.serialization.Soap转载 2013-09-02 17:30:22 · 1160 阅读 · 0 评论 -
android连接本地web服务器的方法
在电脑上访问本机web服务器的时候,比如IIS或者Tomcat,用的是localhost或者127.0.0.1但是在android模拟器中,这个是代表手机的本地,所以访问不了想要访问的服务器,只要把localhost或者127.0.0.1换成10.0.2.2就可以访问电脑本地的web服务器了(在网上学到的,为了方便以后查找所以做了一下笔记,呵呵)转自:http://hi.baidu.c转载 2013-09-03 13:47:13 · 4101 阅读 · 0 评论 -
Android中Intent传递序列化对象的两种方法(Serializable,Parcelable)
今天要给大家讲一下Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcelable(Key, Object);当然这些Object是有一定的条件的,前者是实现了Serializable接口,而后者是实现了Parcelable接口,为了让大家更容易理解我还是照常写了一个转载 2013-09-04 11:47:33 · 7686 阅读 · 0 评论 -
android中正确导入第三方jar包
1,右键工程, Build path, java build path, 2,选择libraries在右边的按钮中点击“Add Library” 3,选择“User library”,点击“下一步” 4,点击“User librarys”按钮在出现的界面中点击“New..”按钮 在弹出的界面中随便起一个名字,点击“确定”转载 2013-11-21 15:38:24 · 1273 阅读 · 0 评论 -
Android 获取当前系统时间
Android的文件有建议用Time代替Calendar。用Time对CPU的负荷会较小。在写Widget时特别重要。Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone资料。t.setToNow(); // 取得系统时间。int year = t.year;int month = t.month;转载 2013-12-12 11:58:22 · 2583 阅读 · 0 评论 -
android书架效果背景图处理
在android应用中,做一个小说阅读器是很多人的想法,大家一般都是把如何读取大文件,如果在滚动或是翻页时,让用户感觉不到做为重点。我也在做一个类似一功能,可是在做书架的时候,看了QQ阅读的书架,感觉很好看,就想做一个,上网查了一下,真有例子http://blog.csdn.net/wangkuifeng0118/article/details/7944215 上面的例子很不错原创 2013-12-24 16:57:34 · 3476 阅读 · 1 评论 -
Android开发随笔之ScrollView嵌套GridView
前些日子在开发中用到了需要ScrollView嵌套GridView的情况,由于这两款控件都自带滚动条,当他们碰到一起的时候便会出问题,即GridView会显示不全,为了解决这个问题查了N多资料,某个谷歌的官方回复竟然是GridView不需要ScrollView,那个牛气冲天啊,可是爷偏偏用到了肿么办呢?!又继续查,神马重写控件重写类的,那代码一坨坨的有木有!!!最后,还是在某人一句很隐晦的提示下得转载 2013-12-24 15:47:28 · 1146 阅读 · 0 评论 -
android中的ellipsize
最近为了解决某个bug,textview中内容过长的话自动换行,但是调用measureText函数时发现返回值很不准确,单位也不确定,是pixel还是dip,都不准。后来想起textview中有个内容过长加省略号的属性,即ellipsize,可以较偷懒地解决这个问题,哈哈~用法如下:在xml中android:ellipsize = "end" 省略号在结尾android:el转载 2014-06-04 14:24:06 · 836 阅读 · 0 评论 -
Android设置透明、半透明等效果
#50000000 //注意://color.xml的#5000000前两位是透明的效果参数从00--99(透明--不怎么透明),//后6位是颜色的设置原创 2014-06-06 09:18:13 · 825 阅读 · 0 评论 -
动态修改RelativeLayout的宽高
我们经常会动态修改RelativeLayout的宽高,这样的代码,比较简单,就是直接修改原创 2014-07-16 11:52:49 · 23207 阅读 · 1 评论 -
Caused by: java.lang.ClassCastException: android.widget.LinearLayout$LayoutParams 错误
Caused by: java.lang.ClassCastException: android.widget.LinearLayout$LayoutParams错误,原创 2014-07-16 11:19:02 · 2679 阅读 · 0 评论 -
android如何改变editText控件中部分文字的格式
我们在使用editText控件的时候,会遇到这样的一问题,就是我在输入时候,当我选择让文字变原创 2014-06-26 11:35:43 · 7212 阅读 · 0 评论 -
SpannableString的使用
package com.tianjf;import android.app.Activity;import android.graphics.Color;import android.graphics.drawable.Drawable;import android.os.Bundle;import android.text.SpannableString;import androi转载 2014-06-26 15:04:43 · 909 阅读 · 0 评论 -
android中自己定义dialog
dialog是android中提供的一组弹出提示框,非常好用,可是它的样式是一个定式,有时候我们需求定义一些自己的样式.1,定义一个样式文件,此文件继承自Theme.Dialog,在style.xml文件中建立一个自己的样式 @null true @color/color_shenhui true @null原创 2014-07-18 12:34:40 · 1096 阅读 · 0 评论 -
Android之drawable state各个属性详解
我们在定义一个drawable的时候可以通过xml定义的drawable对象。它使得一个图片能在不同的状态下显示不同的图案,比如一个Button,它有pressed,focused,或者其它状态,通过使用state list drawable,你就可以为每种状态提供不同的图片。先看一个范例:XML file saved at res/drawable/button.xml:转载 2014-05-29 09:46:09 · 902 阅读 · 0 评论 -
android虚线
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="line" > <stroke android:dashGap="3dp" android:dashWidth="3dp" android:color="@colo转载 2014-07-02 08:21:55 · 5210 阅读 · 1 评论 -
eclipse注释字体太小的解决办法
英文版:window--->preferences--->appearance--->colors and fonts--->text font中文版:窗口-->-->首选项-->外观-->颜色和字体-->文本字体 接下来将文本字体从Consolas修改为Courier New 注意:如果修改字体时没有Courier New,win7 电脑打控制面板\外观和个性化\转载 2014-05-28 15:05:03 · 979 阅读 · 0 评论 -
关于android布局的两个属性dither和tileMode
首先,两个单词的中文意思分别是dither(抖动)和tileMode(平铺)1,先来介绍tileMode(平铺)它的效果类似于 让背景小图不是拉伸而是多个重复(类似于将一张小图设置电脑桌面时的效果)[html] view plaincopyxml version="1.0" encoding="utf-8"?> Li转载 2014-05-29 09:40:08 · 2140 阅读 · 0 评论 -
view的clickable属性和点击background颜色改变
drawable可以是color(color只能是color)android:background=drawable或者color当一个view(iamge/text view都可以)的android:clickable="true"可以像button一样点击然后背景颜色android:background="@drawable/选择颜色的xml文件名"可设置点击、非点击两转载 2014-05-29 09:39:04 · 13646 阅读 · 0 评论 -
Android软键盘的显示与隐藏
原创文章传送门:http://winuxxan.blog.51cto.com/2779763/522810本文仅是对原创文章重新进行或多或少的代码测试,权当记录并加深印象再次感谢原创作者的分享 一:简述点击文本框EditText,系统会自动弹出软键盘(其本质是一个Dialog),这必然会引起当前Activity主窗口的大小调整而Android提供了不同的可选模式去调整活动窗转载 2014-06-13 16:20:35 · 961 阅读 · 0 评论 -
Error inflating class android.support.v4.view.ViewPager 问题的解决方法
ViewPager是个很好很强大的控件,很多应用用它来实现很酷的效果,但是很多情况下在运行时会遇到Error inflating class android.support.v4.view.ViewPager这个问题,这个问题的解决方法很简单:右键项目选择Build Path ->Configure Build Path,然后选择Order and export 选项.置顶android-supp转载 2014-08-11 22:09:04 · 13303 阅读 · 9 评论 -
android项目出现红色大感叹号的问题解决方法
在网上找到解决的方法,特此分享【问题原因】:工程中classpath中指向的包路径错误【解决办法】:右键项目名称 BuildPath —> Configure Build Paht…中,然后上面有几个选项卡找到 Libraries中 出现红色叉号的包为路径错误的包。到classpath中修改相应包的当前路径,也就是你SDK的路径。然后回到eclipse中F5刷新工程比如我的就是:B转载 2014-08-12 21:10:31 · 6068 阅读 · 0 评论 -
Android使用自定义AlertDialog(退出提示框)
有时候我们需要在游戏或应用中用一些符合我们样式的提示框(AlertDialog)以下是我在开发一个小游戏中总结出来的.希望对大家有用.先上效果图:下面是用到的背景图或按钮的图片经过查找资料和参考了一下例子后才知道,要实现这种效果很简单.就是在设置alertDialog的contentView.以下的代码是写在Activity下的,代码如下:转载 2014-11-13 14:24:24 · 968 阅读 · 0 评论 -
Android AlarmManager实现不间断轮询服务(定时提醒功能)
在消息的获取上是选择轮询还是推送得根据实际的业务需要来技术选型,例如对消息实时性比较高的需求,比如微博新通知或新闻等那就最好是用推送了。但如果只是一般的消息检测比如更新检查,可能是半个小时或一个小时一次,那用轮询也是一个不错的选择,因为不需要额外搭建推送服务器,不用额外配置推送服务。另外推送现在一般以维持长连接的方式实现,在手机客户端也会耗费一定的电量。今天就介绍一个在Android上实现轮询机制转载 2014-11-27 09:52:09 · 8811 阅读 · 0 评论