自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 跳转第三方App或网页进行导航

/** * Created by zhq_zhao on 2017/5/5. * 注意百度不需要起始位置的经纬度,而高德需要起始位置的经纬度 * 使用第三方导航:高德、百度。。。。。。。。。。 */public class AmapUtil { private static AmapUtil mAmapUtil; private LocationManager loc...

2019-03-15 10:51:28 2927 1

原创 图片压缩

/** * 压缩到 256kb * * @param bitmap * @return */private Bitmap ImageCompressL(Bitmap bitmap) { double targetwidth = Math.sqrt(256 * 1024); if (bitmap.getWidth() > targetwidth || bitmap...

2019-01-15 11:04:02 181

原创 tablayout下划线宽度

/** * 设置tab下划线宽度 * @param tabLayout */public void reflex(final TabLayout tabLayout){ //了解源码得知 线的宽度是根据 tabView的宽度来设置的 tabLayout.post(new Runnable() { @Override public void...

2018-10-23 15:14:09 524

原创 隐藏软键盘

<EditText android:id="@+id/ed_search" android:layout_width="0dp" android:layout_height="match_parent" android:layout_marginTop="10dp" android:layout_marginBottom="10dp" an..

2018-10-16 20:08:19 579

原创 VirtualLayout

1.初始化布局管理器VirtualLayoutManager layoutManager = new VirtualLayoutManager(this);recyclerView.setLayoutManager(layoutManager); 2.添加数据,设置适配器 DelegateAdapter delegateAdapter = new Delegate...

2018-10-15 09:50:19 465

原创 RecyclerView添加下划线

https://www.jianshu.com/p/4eff036360da

2018-10-13 17:12:17 2057

原创 饺子播放器解决视频黑边

//黑边问题,视频两边的黑边难以去除,我直接用饺子播放器,饺子播放器能够解决黑边。//第一步 导入依赖:implementation 'com.github.bumptech.glide:glide:3.7.0'//根据自己的喜好,使用图片加载框架implementation 'cn.jzvd:jiaozivideoplayer:6.2.4' //第二步 布局:<c...

2018-08-30 11:45:16 4323 1

原创 6.0,7.0,8.0获取相机权限

// 权限@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN_MR2) @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(...

2018-08-25 01:34:46 1434

原创 反射

获取类:public static <T>T getT(Object o,int i){ ParameterizedType parameterizedType = (ParameterizedType) o.getClass().getGenericSuperclass(); Type type = parameterizedType.getActualType...

2018-08-22 12:55:37 202

原创 沉浸式状态栏

快速实现:compile 'com.githang:status-bar-compat:latest.integration'StatusBarCompat.setStatusBarColor(this, color, lightStatusBar);3.0(API 11)getWindow().addFlags(WindowManager.LayoutParams.FLAG_FU...

2018-08-21 16:56:01 571

原创 Fragment预防预加载

public abstract class BaseFragment<P extends BasePresenter,M extends BaseModel> extends Fragment { /** * 视图是否已经初初始化 */ public Activity mActivity; public P mPresenter; ...

2018-08-20 17:30:07 676

原创 TMvp使用

//工具类public static <T>T getT(Object o,int i){ ParameterizedType parameterizedType = (ParameterizedType) o.getClass().getGenericSuperclass(); Type type = parameterizedType.getActualT...

2018-08-20 17:26:41 626

原创 添加Fragment

private BaseFragment lastFragment;private FragmentManager manager;public void addFragment(Class<? extends BaseFragment> fragment, int id) { manager = getSupportFragmentManager(); ...

2018-08-20 17:18:57 193

原创 Android 三级缓存(网络+LruCache(原理分析)+DeskLruCache)

什么是三级缓存网络缓存, 不优先加载, 速度慢,浪费流量 本地缓存, 次优先加载, 速度快 内存缓存, 优先加载, 速度最快为什么要使用三级缓存如今的 Android App 经常会需要网络交互,通过网络获取图片是再正常不过的事了 假如每次启动的时候都从网络拉取图片的话,势必会消耗很多流量。在当前的状况下,对于非wifi用户来说,流量还是很贵的,一个很耗流量的应用,其用户数量级肯定...

2018-08-03 20:05:08 245

原创 android dialog —— 日期和时间选择对话框

日期和时间选择对话框,首先是要获得当前时间,这里用 java类中的Calendar来获得日期和时间(也可以用Date,但是不提倡,Date部分方法已经注释为过时), Calendar是一个抽象类,是通过getInstance()来获得实例日期和时间选择对话框无需在像前面一样借组与AlertDialog.Builder来作为内容的载体,有直接的Dialog,其实源码里面已经包括了Builder。...

2018-07-27 00:09:53 5398

原创 android 使用第三方库实现三级联动城市选择器

先看效果图:这个第三方库使用起来非常方便,首先IDE必须是android studio,因为需要gradle引入资源在build.gradle里面添加compile 'liji.library.dev:citypickerview:1.1.0'然后在初始化的时候调用方法public void initCityPicker(){        cityPicker = n...

2018-07-27 00:05:00 1882

原创 android 轮播图Banner的使用详情

1.依赖bannerGradledependencies{ compile 'com.youth.banner:banner:1.4.9' //最新版本}2.添加权限到你的 AndroidManifest.xml<uses-permission android:name="android.permission.INTERNET" /><us...

2018-07-26 11:34:08 655

转载 仿淘宝商品详情页TabLayout+ListView

有点好玩的跟大家分享一下项目对商品详情页改版有新需求。顶部是一个渐变的Title包括“宝贝”,“详情”,“推荐”三个文本,下边是一个竖向滑动的列表显示商品详情和推荐商品。要求两部分关联起来,也就是点横向的文本下边的列表能滑动到相应item,相反亦然。  自然而然我就想到了 TabLayout + ListView实现(RecyclerView原理都是一样的)2).添加tabLayout监听...

2018-07-26 11:14:41 1976 9

原创 android 使用BottomTabBar实现底部导航页

哈哈,最近又找见了一个新的控件,BottomTabBar使用起来也是非常的方便以前写底部导航页的时候要么使用,RadioGroup+RadioButton+getSupportFragmentManager(),或者是tabLayou+ViewPager,相比BottomTabBar+getSupportFragmentManager()比起来我更喜欢用这个使用流程:1.导入依赖...

2018-07-24 15:04:16 516

原创 android 文字转语音进行播报

首先呢有几种集成的方法,比如第三方讯飞,Medplay,androd自带的TextToSpeech...我使用的是第三种安卓自带的,使用起来非常的简单1.直接导入android.speech.tts.TextToSpeech//定义一个tts对象private TextToSpeech tts;2.自定义类实现OnLnitListener接口重写onInit方法onInit...

2018-07-24 14:33:34 5798

原创 android 通讯录好友排序+字母索引

1.首先自定义TextView继承TextView2.重写onTuchEvent方法,对txtview的状态进行判断3.自定义接口回调,在onTuchevet事件里边对我们的接口方法进行赋值4.汉语转拼音工具类,有两种方法:使用第三方pinyin4j的jar包。下载地址  , Android Studio也可直接依赖 compile 'com.belerweb:pinyin4j...

2018-07-22 19:47:54 1138 2

原创 android 自定义listview实现头部试图放大缩小

1.首先自定义类继承listview重写构造方法,和overScrollBy()方法2.提供一个公共的方法用于获取子view的高度,添加全局监听方法getViewTreeObserver().addOnGlobalLayoutListener()用于获取子view的高度,只获取一getViewTreeObserver().removeOnGlobalLayoutListener(t...

2018-07-21 11:47:28 512

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除