<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Android_Code的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/Android_Code</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; Android_Code]]></copyright><item><title><![CDATA[跳转第三方App或网页进行导航]]></title><link>https://blog.csdn.net/Android_Code/article/details/88568206</link><guid>https://blog.csdn.net/Android_Code/article/details/88568206</guid><author>Android_Code</author><pubDate>Fri, 15 Mar 2019 10:51:28 +0800</pubDate><description><![CDATA[/**
 * Created by zhq_zhao on 2017/5/5.
 * 注意百度不需要起始位置的经纬度，而高德需要起始位置的经纬度
 * 使用第三方导航：高德、百度。。。。。。。。。。
 */
public class AmapUtil {
    private static AmapUtil mAmapUtil;
    private LocationManager loc...]]></description><category></category></item><item><title><![CDATA[图片压缩]]></title><link>https://blog.csdn.net/Android_Code/article/details/86489262</link><guid>https://blog.csdn.net/Android_Code/article/details/86489262</guid><author>Android_Code</author><pubDate>Tue, 15 Jan 2019 11:04:02 +0800</pubDate><description><![CDATA[
/**
 * 压缩到 256kb
 *
 * @param bitmap
 * @return
 */
private Bitmap ImageCompressL(Bitmap bitmap) {
    double targetwidth = Math.sqrt(256 * 1024);
    if (bitmap.getWidth() &amp;gt; targetwidth || bitmap...]]></description><category></category></item><item><title><![CDATA[tablayout下划线宽度]]></title><link>https://blog.csdn.net/Android_Code/article/details/83307320</link><guid>https://blog.csdn.net/Android_Code/article/details/83307320</guid><author>Android_Code</author><pubDate>Tue, 23 Oct 2018 15:14:09 +0800</pubDate><description><![CDATA[

/**
 * 设置tab下划线宽度
 * @param tabLayout
 */
public void reflex(final TabLayout tabLayout){
    //了解源码得知 线的宽度是根据 tabView的宽度来设置的
    tabLayout.post(new Runnable() {
        @Override
        public void...]]></description><category></category></item><item><title><![CDATA[隐藏软键盘]]></title><link>https://blog.csdn.net/Android_Code/article/details/83096606</link><guid>https://blog.csdn.net/Android_Code/article/details/83096606</guid><author>Android_Code</author><pubDate>Tue, 16 Oct 2018 20:08:19 +0800</pubDate><description><![CDATA[

&amp;lt;EditText
    android:id=&quot;@+id/ed_search&quot;
    android:layout_width=&quot;0dp&quot;
    android:layout_height=&quot;match_parent&quot;
    android:layout_marginTop=&quot;10dp&quot;
    android:layout_marginBottom=&quot;10dp&quot;
    an..]]></description><category></category></item><item><title><![CDATA[VirtualLayout]]></title><link>https://blog.csdn.net/Android_Code/article/details/83054442</link><guid>https://blog.csdn.net/Android_Code/article/details/83054442</guid><author>Android_Code</author><pubDate>Mon, 15 Oct 2018 09:50:19 +0800</pubDate><description><![CDATA[1.初始化布局管理器



VirtualLayoutManager layoutManager = new VirtualLayoutManager(this);
recyclerView.setLayoutManager(layoutManager);



	2.添加数据，设置适配器
	
	
	
	
DelegateAdapter delegateAdapter = new Delegate...]]></description><category></category></item><item><title><![CDATA[RecyclerView添加下划线]]></title><link>https://blog.csdn.net/Android_Code/article/details/83040286</link><guid>https://blog.csdn.net/Android_Code/article/details/83040286</guid><author>Android_Code</author><pubDate>Sat, 13 Oct 2018 17:12:17 +0800</pubDate><description><![CDATA[https://www.jianshu.com/p/4eff036360da]]></description><category></category></item><item><title><![CDATA[饺子播放器解决视频黑边]]></title><link>https://blog.csdn.net/Android_Code/article/details/82219074</link><guid>https://blog.csdn.net/Android_Code/article/details/82219074</guid><author>Android_Code</author><pubDate>Thu, 30 Aug 2018 11:45:16 +0800</pubDate><description><![CDATA[//黑边问题，视频两边的黑边难以去除，我直接用饺子播放器，饺子播放器能够解决黑边。

//第一步 导入依赖：


implementation 'com.github.bumptech.glide:glide:3.7.0'//根据自己的喜好，使用图片加载框架
implementation 'cn.jzvd:jiaozivideoplayer:6.2.4'

 

//第二步 布局：


&amp;lt;c...]]></description><category></category></item><item><title><![CDATA[6.0，7.0，8.0获取相机权限]]></title><link>https://blog.csdn.net/Android_Code/article/details/82027500</link><guid>https://blog.csdn.net/Android_Code/article/details/82027500</guid><author>Android_Code</author><pubDate>Sat, 25 Aug 2018 01:34:46 +0800</pubDate><description><![CDATA[
// 权限
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN_MR2)
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(...]]></description><category></category></item><item><title><![CDATA[反射]]></title><link>https://blog.csdn.net/Android_Code/article/details/81942087</link><guid>https://blog.csdn.net/Android_Code/article/details/81942087</guid><author>Android_Code</author><pubDate>Wed, 22 Aug 2018 12:55:37 +0800</pubDate><description><![CDATA[获取类：


public static &amp;lt;T&amp;gt;T getT(Object o,int i){
    ParameterizedType parameterizedType = (ParameterizedType) o.getClass().getGenericSuperclass();
    Type type = parameterizedType.getActualType...]]></description><category></category></item><item><title><![CDATA[沉浸式状态栏]]></title><link>https://blog.csdn.net/Android_Code/article/details/81910321</link><guid>https://blog.csdn.net/Android_Code/article/details/81910321</guid><author>Android_Code</author><pubDate>Tue, 21 Aug 2018 16:56:01 +0800</pubDate><description><![CDATA[快速实现：

compile 'com.githang:status-bar-compat:latest.integration'

StatusBarCompat.setStatusBarColor(this, color, lightStatusBar);

3.0（API 11）

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FU...]]></description><category></category></item><item><title><![CDATA[Fragment预防预加载]]></title><link>https://blog.csdn.net/Android_Code/article/details/81874831</link><guid>https://blog.csdn.net/Android_Code/article/details/81874831</guid><author>Android_Code</author><pubDate>Mon, 20 Aug 2018 17:30:07 +0800</pubDate><description><![CDATA[
public abstract class BaseFragment&amp;lt;P extends BasePresenter,M extends BaseModel&amp;gt; extends Fragment {
    /**
     * 视图是否已经初初始化
     */
    public Activity mActivity;
    public P mPresenter;
    ...]]></description><category></category></item><item><title><![CDATA[TMvp使用]]></title><link>https://blog.csdn.net/Android_Code/article/details/81874626</link><guid>https://blog.csdn.net/Android_Code/article/details/81874626</guid><author>Android_Code</author><pubDate>Mon, 20 Aug 2018 17:26:41 +0800</pubDate><description><![CDATA[



//工具类
public static &amp;lt;T&amp;gt;T getT(Object o,int i){
    ParameterizedType parameterizedType = (ParameterizedType) o.getClass().getGenericSuperclass();
    Type type = parameterizedType.getActualT...]]></description><category></category></item><item><title><![CDATA[添加Fragment]]></title><link>https://blog.csdn.net/Android_Code/article/details/81874515</link><guid>https://blog.csdn.net/Android_Code/article/details/81874515</guid><author>Android_Code</author><pubDate>Mon, 20 Aug 2018 17:18:57 +0800</pubDate><description><![CDATA[

private BaseFragment lastFragment;
private FragmentManager manager;



public void addFragment(Class&amp;lt;? extends BaseFragment&amp;gt; fragment, int id) {
    manager = getSupportFragmentManager();
    ...]]></description><category></category></item><item><title><![CDATA[Android 三级缓存(网络+LruCache(原理分析)+DeskLruCache)]]></title><link>https://blog.csdn.net/Android_Code/article/details/81393684</link><guid>https://blog.csdn.net/Android_Code/article/details/81393684</guid><author>Android_Code</author><pubDate>Fri, 03 Aug 2018 20:05:08 +0800</pubDate><description><![CDATA[什么是三级缓存

网络缓存, 不优先加载, 速度慢,浪费流量
	本地缓存, 次优先加载, 速度快
	内存缓存, 优先加载, 速度最快
为什么要使用三级缓存

如今的 Android App 经常会需要网络交互，通过网络获取图片是再正常不过的事了
	假如每次启动的时候都从网络拉取图片的话，势必会消耗很多流量。在当前的状况下，对于非wifi用户来说，流量还是很贵的，一个很耗流量的应用，其用户数量级肯定...]]></description><category></category></item><item><title><![CDATA[android dialog —— 日期和时间选择对话框]]></title><link>https://blog.csdn.net/Android_Code/article/details/81229855</link><guid>https://blog.csdn.net/Android_Code/article/details/81229855</guid><author>Android_Code</author><pubDate>Fri, 27 Jul 2018 00:09:53 +0800</pubDate><description><![CDATA[日期和时间选择对话框，首先是要获得当前时间，这里用 java类中的Calendar来获得日期和时间(也可以用Date，但是不提倡，Date部分方法已经注释为过时), Calendar是一个抽象类，是通过getInstance()来获得实例

日期和时间选择对话框无需在像前面一样借组与AlertDialog.Builder来作为内容的载体,有直接的Dialog，其实源码里面已经包括了Builder。...]]></description><category></category></item><item><title><![CDATA[android 使用第三方库实现三级联动城市选择器]]></title><link>https://blog.csdn.net/Android_Code/article/details/81229780</link><guid>https://blog.csdn.net/Android_Code/article/details/81229780</guid><author>Android_Code</author><pubDate>Fri, 27 Jul 2018 00:05:00 +0800</pubDate><description><![CDATA[先看效果图：



这个第三方库使用起来非常方便，首先IDE必须是android studio，因为需要gradle引入资源

在build.gradle里面添加compile 'liji.library.dev:citypickerview:1.1.0'

然后在初始化的时候调用方法



public void initCityPicker(){

        cityPicker = n...]]></description><category></category></item><item><title><![CDATA[android 轮播图Banner的使用详情]]></title><link>https://blog.csdn.net/Android_Code/article/details/81216982</link><guid>https://blog.csdn.net/Android_Code/article/details/81216982</guid><author>Android_Code</author><pubDate>Thu, 26 Jul 2018 11:34:08 +0800</pubDate><description><![CDATA[1.依赖banner

Gradle



dependencies{
    compile 'com.youth.banner:banner:1.4.9'  //最新版本
}


2.添加权限到你的 AndroidManifest.xml


&amp;lt;uses-permission android:name=&quot;android.permission.INTERNET&quot; /&amp;gt;

&amp;lt;us...]]></description><category></category></item><item><title><![CDATA[仿淘宝商品详情页TabLayout+ListView]]></title><link>https://blog.csdn.net/Android_Code/article/details/81216243</link><guid>https://blog.csdn.net/Android_Code/article/details/81216243</guid><author>Android_Code</author><pubDate>Thu, 26 Jul 2018 11:14:41 +0800</pubDate><description><![CDATA[

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

2).添加tabLayout监听...]]></description><category></category></item><item><title><![CDATA[android 使用BottomTabBar实现底部导航页]]></title><link>https://blog.csdn.net/Android_Code/article/details/81184627</link><guid>https://blog.csdn.net/Android_Code/article/details/81184627</guid><author>Android_Code</author><pubDate>Tue, 24 Jul 2018 15:04:16 +0800</pubDate><description><![CDATA[哈哈，最近又找见了一个新的控件，BottomTabBar使用起来也是非常的方便

以前写底部导航页的时候要么使用，RadioGroup+RadioButton+getSupportFragmentManager(),或者是tabLayou+ViewPager，相比BottomTabBar+getSupportFragmentManager()比起来我更喜欢用这个

使用流程：

1.导入依赖


...]]></description><category></category></item><item><title><![CDATA[android 文字转语音进行播报]]></title><link>https://blog.csdn.net/Android_Code/article/details/81184090</link><guid>https://blog.csdn.net/Android_Code/article/details/81184090</guid><author>Android_Code</author><pubDate>Tue, 24 Jul 2018 14:33:34 +0800</pubDate><description><![CDATA[首先呢有几种集成的方法，比如第三方讯飞，Medplay，androd自带的TextToSpeech...

我使用的是第三种安卓自带的，使用起来非常的简单

1.直接导入android.speech.tts.TextToSpeech

//定义一个tts对象

private TextToSpeech tts;

2.自定义类实现OnLnitListener接口重写onInit方法

onInit...]]></description><category></category></item></channel></rss>