![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android开发日记
恰逢花开花香
这个作者很懒,什么都没留下…
展开
-
toast第二次有时不显示
看是不是这样做的。这里牵扯到回收机制,toast有可能在你调的时候就回收了。private static Toast toast;if (toast == null) { toast = Toast.makeText(context, text, duration); } else { toast.setText(text); ...原创 2019-03-27 17:49:28 · 1570 阅读 · 3 评论 -
android开发adapter赋值问题
直接赋值会改变原来的的值,这样就生成了两个一样的值错误代码示例:public void onClick(View view) { FollowResult.ListBean listBean = new FollowResult.ListBean(); listBean = bean; listBean.setHold原创 2017-11-28 20:24:31 · 1415 阅读 · 0 评论 -
Android一些琐碎知识点(不定时更新)
一、@id与@+id的区别@id : 引用现有的资源,类似@string 这样的做法易于统一管理。 具体用法: /> @+id :如果在@后面使用“+”,表示当修改完某个布局文件并保存后,系统会自动在R.java文件中生成相应的int类型变量。变量名就是“/”后面的值,例如,@+id/xyz会在R.java文件中生成int xyz = value,其中v原创 2016-05-03 16:40:36 · 485 阅读 · 0 评论 -
android开发与h5交互
跳转地址:http://www.jianshu.com/p/a25907862523转载 2017-11-17 20:02:35 · 349 阅读 · 0 评论 -
Android开发自定义圆角带点击效果的Button
public class AnimationButton extends Button { private int mBackGroundColor = Color.parseColor("#ffffff"); private int normalColor; private int pressedColor; private float round;原创 2017-11-09 20:06:44 · 2219 阅读 · 0 评论 -
Android开发滑动到顶部悬停效果
之前也出个微博悬停效果,但是它里面是底部是viewpager的,还有它的自定义控件过于复杂。这次写一个底部就一个recyclerview,算是改良版本。废话先来看下效果图,是不是你们要的。由于我找不到csdn博客上上传视频的地方,只能上传效果。第一张:首屏画面第二张:滑动画面第三张:滑动留言精选处悬停效果希望大家能看懂三张图,联想到其中的操作,第三张图的发表原创 2017-10-15 15:21:20 · 9468 阅读 · 0 评论 -
Glide真的可以显示gif且能控制结束
至于如何集成Glide到项目中,可能每个项目都不一样。直接看加载gif代码:Glide.with(mContext).load(imageResource).diskCacheStrategy(DiskCacheStrategy.SOURCE).listener(new RequestListener() { @Override public原创 2017-10-19 12:21:51 · 4402 阅读 · 2 评论 -
Android开发接入第三方SDK流程
接多第三方后,慢慢感觉都是有套路可寻的。但是也有很多要注意的地方一、SDK集成:这是最重要的,最重要的,最重要的。集成一定要把文档看完,不能因为熟而跳过,或者是快速浏览。 不能跳过的是:混淆文件定义部分待续。。。原创 2017-09-27 20:45:43 · 4043 阅读 · 2 评论 -
Android Studio导入其他工程的app作为module
往往下载别人的demo,功能效果都在demo中的app。如果一个个拷贝类过来很麻烦,特别多配置的,重点是会影响到项目中的app会变的很臃肿。解决方案:把demo的app作为module导入到项目中,依赖于项目的app缺点:app可以任意使用module中的内容,但是module不能使用app中的内容(弥补:参数传递暂时处理)ok,开始操作流程:1、导入:点击file,选择impor原创 2017-09-01 17:18:49 · 5761 阅读 · 1 评论 -
Android开发阿里播放器
最近在接阿里播放器,记录下:后面不断更新一、播放本地视频和网络视频: 本地视频:url = Environment.getExternalStorageDirectory().getPath()+"/DCIM/Camera/VID_20170722_201000.mp4" 网络视频:url = "http://gslb.miaopai.com/stream/ed原创 2017-09-01 15:53:17 · 3509 阅读 · 1 评论 -
Android开发显示之前获取view的宽高方法
记住onCreate、onStart、onResume中均无法正确得到某个View的宽高,因为View的measure过程和Activity的生命周期方法是不同步执行的,如果View还没有测量完毕,那么获得的宽高就是01、Activity中的onWindowFocusChanged(),注意被多次调用,可以加标志,获取到想要的就不获取了@Override public void原创 2017-08-29 11:48:02 · 1040 阅读 · 1 评论 -
Android开发动态添加布局且平均占屏幕大小
标题可能说得不是很清楚直接看下效果图:最后一行可以是一个,两个或者三个。思路:首先外面是一个LinearLayout,竖属性,然后往里面添加LinearLayout(行),横属性,再往行里面添加button即可。 这里要用到求余确定最后一行的数量以及确定加载3个的有多少行,最后一行补全多少个求余:final int mod = count % 3;原创 2017-08-07 15:27:27 · 1829 阅读 · 0 评论 -
ListView加头部Banner基本思路
暂时想到两种方法:1. listView.addHeaderView(headView); 2. listView适配BaseAdapter时,设置多个type类型 然后getItemViewType获取类型判断添加。1.要注意的问题是:防止多次添加,加个判断即可原创 2016-06-06 21:15:59 · 2086 阅读 · 0 评论 -
Android中px,dp,sp单位的区别和应用
下面的解释基本是百度得来的px:px就是pixel的缩写啦,pixel即像素,它不是自然界的长度单位。px是就是一张图片中最小的点,一张位图就是由这些点构成的。1024px就是1024像素,最简单的你可以在windows桌面属性里的“设置”看到,如果是1024×768,也就是说水平方向上有1024个点,垂直方向上有768个点。谁能说出一个“点”有多长多大么?可以画的很小,也可以很大。如果点转载 2016-06-08 15:34:26 · 6832 阅读 · 0 评论 -
Android开发动态二维数组赋值
今天是2017年第一天。不禁感叹时间过的真的快。2016还能好好的感受就过去了。下面来说下二维数组动态赋值。一开始我也觉得这有什么难的,但确实在我做的时候难倒我了。我真的菜了。需求:根据json解析过来的数据,赋值给二维数据。(注:这里的行数是知道的) private String[][] citys; citys = new String[jsonArray.l原创 2017-01-01 22:54:16 · 10688 阅读 · 2 评论 -
Android开发访微博主页
需求场景:有个头部,悬停部,下方左右滑动切换内容,再下拉头部内容再次出现,大概是这样网上有很多这样的源码,我的是参考鸿洋大神的,要原稿说明的请自行百度鸿洋大神的一、TopicStickyNavLayout :自定义LinearLayout控件,主要是根据当前滑动的位置处理事件分发public class TopicStickyNavLayout extends LinearLayout原创 2017-08-09 16:09:25 · 568 阅读 · 0 评论 -
Android开发自定义组合控件
public class MyRegItemView extends RelativeLayout{ private TextView leftTextView; private TextView rightTextView; private ImageView rightImageView; public MyRegItemView(Context conte原创 2017-11-14 20:14:09 · 183 阅读 · 0 评论 -
Android开发日常快捷键(不断更新)
主要是更新最新学的:1、大小写切换:ctrl+shift+u2、跳转到某行:ctrl+G原创 2017-11-20 20:10:27 · 407 阅读 · 0 评论 -
android开发的CheckBox和RadioButton
1、改变选择框:以RadioButton为例<RadioButton xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/rb_question" android:layout_height="wrap_content" android:layout_width="wra原创 2017-11-21 20:38:12 · 438 阅读 · 1 评论 -
android开发通知栏权限是否开启
需要分系统版本来操作 4.4版本一下不处理,4.4到8.0,8.0以上@RequiresApi(api = Build.VERSION_CODES.KITKAT)public static boolean isNotificationEnabled(Context context) { if (Build.VERSION.SDK_INT >= Build.VERSION_C...原创 2018-07-18 19:53:18 · 13715 阅读 · 0 评论 -
Bundle与Intent传递参数区别
好处:现在有A,B,C三个活动,我要把值通过A经过B传给C 如果用Intent,会需要一个个取出来再塞回去 用Bundle可以整个传过去,还可以添加新的数据原创 2018-03-28 18:25:23 · 1172 阅读 · 0 评论 -
android开发本地广播
//本地广播,只能动态注册 mLocalBroadcastManager = LocalBroadcastManager.getInstance(this); IntentFilter intentFilter = new IntentFilter(); //发出的是com.hbkj.android.yjq.mymoney.MY_CA...原创 2018-03-15 19:11:00 · 253 阅读 · 0 评论 -
获取Activity的最外层布局
需求:获取每个布局最外层布局,首先想到的是findViedId(),但是很大可能每个布局定义的id是不一样的 普及:每个Activity只有有布局就有DecorView,DecorView包括标题栏和内容栏,在高版本中DecorView还可以设置状态栏,比如设置状态栏透明 if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M){原创 2018-01-19 15:33:02 · 3680 阅读 · 1 评论 -
版本更新
几乎每个应该都必备的功能 准备工作:请求版本更新获取能下载apk的链接, 比如:”http://yibanyue.oss-cn-hangzhou.xxx.com/apk/yiyue.apk” 流程:请求版本更新链接–>获取到链接,弹框询问是否更新–>在本地建apk文件夹–>更新用DownloadManager下载apk,路径放在前面建好的文件夹中–>BroadcastReceiver监听是否下原创 2018-01-18 15:45:38 · 305 阅读 · 0 评论 -
android开发toast弹框更短时间
代码:/** * 短时间(1s)显示toast提示框,此提示框会显示在Activity的中部 * 尽量少用 * * @param word Created by cong on 2017/11/24 19:14 */ public void toastShorter(final int word) { this.run原创 2018-01-16 18:24:51 · 887 阅读 · 0 评论 -
启动页停留时间
启动页停留时间现在绝大数应用都有启动页,多数形式是放一张图。 最好是网络请求过来的,下面只说本地默认图 关键是停留时间的控制 特别说明:几种时间控制有误差(系统时间的受内存的影响) 1、Timer 2、new Handler()new Handler().postDelayed(new Runnable() { @Override public void r原创 2018-01-16 17:09:48 · 1325 阅读 · 0 评论 -
EditView不顶布局的设置
就一句代码:android:windowSoftInputMode="adjustResize|stateHidden"原创 2018-01-30 19:17:55 · 559 阅读 · 0 评论 -
自定义渐变圆角控件
先看效果图: 分析这是线性渐变色,圆弧半径刚好是高度的一半,文字居中处理,大小,颜色可调 首先开始自定义控件的基本步骤 1、style自定义属性<!--自定义控件属性--><declare-styleable name="MyGradientRoundButton"> <attr name="colorStart" format="reference" /> <attr na原创 2018-01-05 14:14:40 · 278 阅读 · 0 评论 -
android开发问题自定义控件
一般形式是问题+单选/多选结构。先看下效果图:原理:单选用RadioGroup来动态添加RadioButton示例代码:public class MyQuestionView extends LinearLayout{ private Context context; private boolean isAddRG; private RadioGr原创 2017-12-29 17:06:43 · 309 阅读 · 0 评论 -
android开发textview超过多少字显示省略号
比如超过6个字显示...代码:android:singleLine="true" android:maxEms="6" android:ellipsize="end"这个代码可能对于自定义控件有问题。换个思路想想,超过6个字,用代码自行截取,最后在自行添加...原创 2018-01-04 19:55:26 · 12431 阅读 · 0 评论 -
android开发修改状态栏
修改状态栏背景色和图标颜色默认是黑底白字的,现在要改为白底黑字的 先看下效果图: 1、状态栏背景是白色: 在style中设置<item name="colorPrimaryDark">@color/white</item>2、写修改状态栏图标的颜色(暂时只知道黑色和白色) public class StatusBarUtil {/** * 修改状态栏为全透明 * @param a原创 2018-01-04 09:40:27 · 3059 阅读 · 0 评论 -
Android studio改项目包名
看来要勤快的写博客了,我也不知道能在Android这条路上走多远。虽然说开发Android也有两年多了,但也没感觉有多牛逼,在初级和中级之间吧。现在在担当主力开发。首先,现在Android形势不太乐观,应用泛滥了,而且手机装几个日常应用就够用了。剩下多学习了,荒废了几个月了。时间对于每个人都一样的,一般在感叹的,都是过的不怎么好了。说多了的。正题:为什么要改包名,很多都是有些公司要原创 2016-12-11 22:39:02 · 803 阅读 · 0 评论 -
RadioButton修改前面的选项样式
<item android:state_checked="false" android:drawable="@mipmap/normal_sex"/> <item android:state_checked="true" android:drawable="@mipmap/selected_sex"/>andro原创 2017-11-16 19:43:43 · 1473 阅读 · 0 评论 -
Android开发各种Adapter的用法
ListView和GridView的Adapter:1、继承BaseAdapter2、新建Holder类声明控件3、覆写getView中做好converView重用,用converView.setTag(diyHolder)4、如果用到getItemViewType(),一般是从数据中赋值确定的,getView方法就要根据type来判断后再设定converView.setTag(d原创 2017-09-18 18:08:56 · 1918 阅读 · 0 评论 -
Android开发ImageView加载网络图片变大问题
首先我的情况是ImageView控件在fragment中,ImageView的宽高都是屏幕宽高,还有奇怪的问题,跳转到其他页面再返回又正常了。 分析:类似以上情况的一般都是线程中赋值宽高,因为可能界面显示了,但是宽高还没赋值好。返回慢一点肯定能赋值成功了的,我的又能显示正常,跟我项目返回会重新设置ImageView图片很大关系。 直接看代码: //不采用线程获取宽高//原创 2017-07-10 10:11:52 · 1192 阅读 · 0 评论 -
Android开发倒计秒数的正确用法
倒计秒数的应用场景就有很多了,比如说验证码倒计时,闪屏倒计时,请求接口倒计时直接看代码:1、private Handler handler = new Handler() { @Override public void handleMessage(Message msg) { second--; if (s原创 2017-07-17 17:34:32 · 1354 阅读 · 0 评论 -
Android开发下载网络图片到本地文件
第一种方法用系统的DownloadManager下载 Uri uri = Uri.parse(imgUrl);//imgUrl:图片网络地址 DownloadManager.Request request = new DownloadManager.Request(uri); //设置允许使用的网络类原创 2017-06-09 15:20:40 · 1418 阅读 · 0 评论 -
Android studio日常bug总结
1、Cannot find System Java Compiler. Ensure that you have installed a JDK (not just a JRE) and configured your JAVA_HOME system variable to point to the according directory 解决方案:file--->Project S原创 2017-02-28 20:06:01 · 517 阅读 · 0 评论 -
Android开发代码中获取布局文件
两种方式View bannerView = LayoutInflater.from(mContext).inflate(R.layout.banner_viewpager_layout, null); BannerViewPager bannerViewPager = (BannerViewPager) bannerView.findViewById(R.id.banner_viewpager)原创 2017-02-18 12:10:29 · 2158 阅读 · 0 评论 -
Android开发EventBus最简单的使用
EventBus的出现我再也不用广播通知了。别问我为什么,它太好了。下面说下最简单的应用。原理什么的,我也不是很懂。我只是会用。接收方:1.必须先做的操作@Overridepublic void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); EventBus.原创 2017-01-13 12:36:42 · 1244 阅读 · 0 评论