- 博客(75)
- 资源 (20)
- 收藏
- 关注
原创 Android切换白黑主题,通过attr更新控件样式
一,在res/values文件下新建一个attrs文件<?xml version="1.0" encoding="utf-8"?><resources> <attr name="custom_text_bg_color" format="color" /> <attr name="custom_text_color" format="color" /> <attr name="custom_icon" format="refe
2020-08-14 16:37:00
598
原创 Android 通过接口传值(以网络请求为例)
第一步,定义接口类:public interface MCallBack { /** * 处理返回的code list */ String handleCodes(String dataStr); /** * 请求失败处理 */ void errorResponse();}第二步,在公共类中定义回传方法: public static void sendRe
2020-07-29 09:41:21
944
原创 android自定义组件入门实践
定义一个小球,使其在View的Canvas中水平往返移动,当小球触碰到右边边界时往左移动,小球触碰到左边边界时往右移动,循环往复。view文件:public class BallMoveView extends View { private int X; private int Y = 100; private int radius = 30; private Paint mPaint; private boolean flag;//移动方向 true为右边,f
2020-06-10 16:40:06
285
原创 Android 自定义数字虚拟键盘
大概两年没写文章了,有些生疏,不知如何动笔,很早以前有过转行的想法,想过考公务员,所以重心不在程序上。近期通过内推的形式入职了一家大公司(社保公积金缴全额,双休,带薪十三天年假,少加班),这么好的福利让我有了稳定下来的想法,打工嘛,无非是想多赚点钱,生活过得更好是吧,于是有了这篇分享。
2019-11-27 12:20:00
597
原创 网络图片获取并转换为Base64字符串
public static String getURLImage(String imageUrl) { String base64String = ""; try { //new一个URL对象 URL url = new URL(imageUrl); //打开链接 HttpURLConnection conn = (Ht
2018-01-02 11:13:36
2559
原创 android仿ios实现分段选择控件UISegmentedControl
在ios7中有一种扁平风格的控件叫做分段选择控件UISegmentedControl,控件上横放或竖放着几个被简单线条隔开的按钮,每次点击能切换不同的按钮和按钮所对应的界面,比如qq客户端V6.5.3版本中消息页与电话页分离就是用的这种原理。但是很可惜的是Android系统并没有自带这种控件,不过我们也可以通过自定义RadioGroup实现该类效果,幸运的是Github上已有开源:https://g
2016-09-07 16:20:57
5548
原创 自定义语音通知栏 NotificationManager
前段时间接了一个项目,是物流公司要弄一款像滴滴打车那样的app,其中有一需求是在手机弹出通知栏NotificationManager后还要实现自定义文字转语音(TTS)。因为以前没接触过TTS,所以刚开始的时候还是有点紧张的,好在办公位对面坐了一位大神,他说“讯飞”应该可以实现这功能,于是就迫不及待的科普了下,官网地址:http://www.xfyun.cn/,结果问题便游刃而解了,废话少说先看效果
2016-06-12 11:07:35
2572
原创 单选选择RadioGroup
1)、布局:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <
2016-02-04 00:01:03
1167
原创 时间选择器TimePickerDialog
package com.example.mytest5;import android.app.Activity;import android.app.DatePickerDialog;import android.app.TimePickerDialog;import android.app.TimePickerDialog.OnTimeSetListener;import android
2016-02-03 23:10:18
1653
原创 日期选择器DatePickerDialog
1)、代码:package com.example.mytest5;import android.app.Activity;import android.app.DatePickerDialog;import android.os.Bundle;import android.util.Log;import android.view.View;import android.view.Vie
2016-02-03 22:52:32
500
原创 下拉控价Spinner的使用
public class MainActivity extends Activity { private static final String TAG = MainActivity.class.getSimpleName();//获得类名 private Spinner mSpinner;//下拉控键 private String[] data = new String[]
2016-02-01 00:11:43
416
原创 在任意类中获得屏幕的宽高
/** 获取手机的屏幕宽 */public static int getSW(Context context) { int sw; WindowManager wm = (WindowManager) context .getSystemService(Context. WINDOW_SERVICE); if (context.getR
2016-01-29 13:30:57
708
原创 自定义进度条对话框
Android系统自带的进度条很丑不能满足我们在真实项目中的实际需求,以下是一个自定义对话框动画的简单演示,难点在于动画所配的图片太难找了,如果有朋友想要完整源码和图片资源的可以取我们资源页下载:1)、Activity:public class MainActivity extends Activity { private static final String TAG = MainActi
2016-01-29 11:39:32
1071
原创 异步请求数据
异步请求适用于大文件上传或下载等耗时任务,数据请求更安全可靠,解决了在主线程不能进行网络通信的弊端,从而有效的提高用户体验。以下案例简单明了的模拟了异步请求数据的全部过程。1)、Activity:public class MainActivity extends Activity { private static final String TAG = MainActivity.class.g
2016-01-28 21:36:02
995
原创 工作感悟(2)
初入职场端正心态很实用的九句话一、职场:先升值,再升职; 二、沟通:先求同,再求异; 三、执行:先完成,再完美; 四、学习:先记录,再记忆; 五、创业:先成长,再成功; 六、发展:先站住,再站高; 七、人际:先交流,再交心; 八、先做好自己,再要求别人; 九、先解决心情,再解决事情。
2016-01-27 18:17:27
406
原创 BroadcastRecevier广播的基本使用
BroadcastRecevier的有序、普通、动态和静态启动以及数据传递1、什么是BroadcastRecevier? BroadcastRecevier是一个系统级别的监听器,比如:插上耳机、电池电量发生变化、切换飞行模式等等都会由系统发送广播,我们的App可以接收过个广播,并做出相应的响应。2、广播发送的两种类型:A) 发送普通广播:sendBroadcast(Intent intent);
2016-01-26 14:44:28
1363
原创 Service的基本使用
Service作为Android四大组件之一可以在很多场合的应用中使用,比如播放音乐、文件下载和文件上传等等,以下通过简短的代码实现了Service的基本使用,以及与Activity界面通信的功能,代码有很详细的注释: Activity类:/** * 注意: * A、将需要在后台执行的任务定义在onStartCommand()方法中,因为Service在UI线程中工作,所以不适合用于耗时的工作
2016-01-25 16:54:41
383
转载 工作感悟(1)
招聘面试要点和技巧●共识:○团队是公司最有价值的部分 ○面试是工作的重要的组成部分,不是额外事 ○“一流的人雇一流人才,二流的人雇三流人才” ○“原则:态度第一、能力第二、经验第三”●基本上,我们要找的人:○人必须不能有问题(必要) ○对我们做的事业有兴趣(必要) ○基础知识和技能良好 ○成长潜力良好 ○有一定相关经验●几面的侧重点:○一面,人品、基础技能和经验 ○二面,确认人品和能
2016-01-25 12:00:20
455
原创 SQLite
sqlite的增删查改CRUDCRUD是指在做计算处理时的增加(Create)、读取(Retrieve)(重新得到数据)、更新(Update)和删除(Delete)几个单词的首字母简写。1、获取Android定义的几个常用目录: Context.getCacheDir()方法 用于获取/data/data//cache目录Context.getFilesDir()方法 用于
2016-01-20 21:28:08
546
原创 数据库基本操作(2)
数据库常用干货 (CRUD)0、事务(transaction) A、事务可以保证数据恢复到初始状态B、事务的4个特征: 1)原子性:事务中的命令可么全部成功,要么全部失败 2)隔离性:多个事务相互隔离,互不干扰 3)持久性:事务一旦提交或回滚,将永远保存 4)一致性:事务前后的状态要保持一致C、事务语法: begin:开启事务 commit:提交事务,数据会永久保存 rollback
2016-01-19 13:55:28
457
原创 数据库基本操作(1)
数据库常用干货 (mysql)1、数据库的相关名词解释 A、DB——Database,数据库,存储数据的仓库; B、DBMS——Database Manager System,数据库管理系统,其实就是指软件,比如MySql、SqlServer、Oracle等等都是DBMS; C、DBS——Database System,数据库系统,是一个完全的数据库体系,包含DB、DBMS、DBA、硬件、软件
2016-01-19 13:50:55
425
原创 自定义组件的简单使用—View
自定义组件的简单使用—View1、 控件是怎么来的? 每一个控件都是使用绘图的方式绘制出来的2、开发自定义组件的几种方法 A、从0开始开发自定义组件,从View或ViewGroup类继承,难度最大 B、从已有组件继承,比如定义ImageView、ListView继承,为已有组件添加新的功能 C、将多个已有的组件组合成一个新的组件3、View类 A、构造方法 public MyV
2016-01-16 15:01:14
538
转载 使用declare-styleable给自定义控件添加自定义属性
1.首先,先写attrs.xml<?xml version="1.0" encoding="utf-8"?><resources> <declare-styleable name="TestAttr"> <attr name="name" format="reference" /> <attr name="age"> <flag nam
2016-01-14 20:11:20
524
原创 自定义组件实现跑马灯效果
自定义组件实现跑马灯效果1:组件类:public class MyView2 extends View { private Mythred mythred; private Paint paint; private int rx = getWidth();//文字的x方向位置 //自定义组件在布局中调用时执行以下方法 public MyView2(Contex
2016-01-13 19:12:32
553
原创 滑动删除ListView
滑动删除ListView实现原理:A、ListView的ListItem是一个容器,通过Scroller可以使得ListItem的子组件产生滚动。B、需要通过手指所在的坐标来获取哪一个ListItem要滚动。C、ListItem的滚动有两种情况:一种跟随手势滚动,另一种是惯性滚动D、设置一个滚动的临界距离,如果手势滚动的距离超过临界距离,则继续惯性滚动删除,否则回滚,还原成初始状态E、滚动
2016-01-13 14:08:02
568
原创 自定义组件基础
自定义组件基础本案例主要简述如何通过view绘制文字、图形和图片。public class MyView2 extends View { private Bitmap bitmap; //自定义组件在布局中调用时执行以下方法 public MyView2(Context context, AttributeSet attrs) { super(context, a
2016-01-12 22:27:03
333
原创 自定义组件_事件处理机制
1、Android的事件触发和响应过程 A、事件完整的响应过程: 先传递事件:Activity -> ViewGroup -> View 再处理事件:View -> ViewGroup -> Activity事件传递和处理过程中涉及的几个方法: 1)分发事件 public boolean dispatchTouchEvent(MotionEvent ev) 向子组件传递事件的动力源
2016-01-12 17:24:52
694
原创 侧边栏 SlidingMenu
自定义组件之侧边栏 SlidingMenu1、侧边栏的功能A、滑动Activity可以打开侧边栏B、如果滑动的距离小于临界边距,则自动回滚,否则,惯性打开C、点击某个按钮可以打开/隐藏侧边栏2、侧边栏的实现思路A、侧边栏组件的父类不再使用ViewGroup,而是使用HorizontalScrollView,使用该类的目的是可以简化滚动功能的实现,HorizontalScrollView已经实
2016-01-12 17:12:19
566
原创 HTML样式选择器style
HTML样式选择器style<!doctype html><html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content=""> <meta name="Keywords" content=""> <me
2015-12-28 16:35:52
2376
原创 HTML图片折叠
HTML图片折叠 <!doctype html><html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content=""> <meta name="Keywords" content=""> <meta na
2015-12-28 15:43:43
2274
原创 HTML之相对定位relative
HTML之相对定位relative<!doctype html><html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content=""> <meta name="Keywords" content="">
2015-12-28 15:18:48
2015
原创 HTML之绝对定位Absolute
HTML之绝对定位<!doctype html><html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content=""> <meta name="Keywords" content=""> <meta na
2015-12-28 15:09:46
4266
原创 <a>链接的不同状态
链接的不同状态<!doctype html><html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content=""> <meta name="Keywords" content=""> <meta name
2015-12-28 11:05:57
534
原创 谷歌AdMob广告接入(插屏广告)
谷歌AdMob广告接入(插屏广告)第一步:翻墙注册并登陆AdMob开发者平台第二步:添加广告,获取广告单元ID第三步:导入sdk,android studio可直接关联依赖:com.google.android.gms:play-services-ads:8.1.0第四步:显示广告:public class MainActivity extends AppCompatActivity {
2015-12-24 18:06:43
7743
原创 谷歌AdMob广告接入(横幅广告)
谷歌AdMob广告接入(横幅广告)第一步:翻墙注册并登陆AdMob开发者平台第二步:添加广告,获取广告单元ID第三步:导入sdk,android studio可直接关联依赖:com.google.android.gms:play-services-ads:8.1.0第四步:创建布局<com.google.android.gms.ads.AdView android:id="@+i
2015-12-24 17:04:11
3368
转载 android实现定时任务
android实现定时任务Handler handler = new Handler();Runnable runnable;runnable = new Runnable(){ @Override public void run() { //这里写你要执行的代码或者调用的方法 handler.postDelayed(
2015-12-23 10:42:01
484
转载 有米sdk广告接入_无积分
有米sdk广告接入_无积分1:导入相关架包,写入相关权限和配置YoumiSdk_v5.3.3_2015-10-10.jar<!-- 配置权限 --> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.REA
2015-12-19 21:28:59
2699
转载 赢告无限sdk接入广告
赢告无限sdk接入广告1:导入相关架包,写入相关权限和配置offers-android-sdk.jar <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
2015-12-19 20:14:45
795
原创 微信分享到朋友圈or聊天列表
微信分享到朋友圈or聊天列表1:注册微信公众号平台开发者 https://open.weixin.qq.com/2:创建应用填写相关信息:特别注意:**应用签名**是你的apk签名发布后通过“微信签名生成工具”获得的,签名工具下载地址:(输入你的应用程序包名即可获得该签名)https://res.wx.qq.com/open/zh_CN/htmledition/res/dev/download
2015-12-18 16:30:00
802
广点通联盟 Android SDK——接入说明文档 V4.8
2020-07-14
高仿网易新闻app
2015-11-28
android市面主流侧滑框架
2015-11-23
android点餐app
2015-11-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人