<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Developer_Sir的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Developer_Sir</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Developer_Sir]]></copyright><item><title><![CDATA[Android开发之Bitmap二次采样]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78971828</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78971828</guid><author>Developer_Sir</author><pubDate>Thu, 04 Jan 2018 15:54:48 +0800</pubDate><description><![CDATA[1.为什么要二次采样
OK，那么首先我要 解决的一个问题就是为什么我们要二次采样？
不知道大家在开发App的过程中有没有遇到过类似于图片墙这样的功能？在做图片墙的时候你有没有遇到过OOM异常呢？遇到了又是怎么解决的？再比如我现在有一张100M大的图片，我想把这张图片用一个ImageView显示出来，那么你的ImageView能够显示出来这张图片吗？上面我们说的这两种情况其实都涉及到图片加载时内]]></description><category></category></item><item><title><![CDATA[Fragment与Activity生命周期的区别与认识]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78916147</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78916147</guid><author>Developer_Sir</author><pubDate>Wed, 27 Dec 2017 20:36:43 +0800</pubDate><description><![CDATA[Activity的生命周期

Fragment的生命周期

Activity与Fragment生命周期的区别

测试代码


package com.goso.testapp;    import android.app.Activity;  import android.app.ListFragment;  import android.os.Bundle;  import a]]></description><category></category></item><item><title><![CDATA[沉浸式模式]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78908274</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78908274</guid><author>Developer_Sir</author><pubDate>Wed, 27 Dec 2017 08:58:41 +0800</pubDate><description><![CDATA[﻿﻿
真正的沉浸式模式
虽说沉浸式导航栏这个东西是被很多人误叫的一种称呼，但沉浸式模式的确是存在的。那么我们如何才能实现像海岛奇兵以及爱奇艺那样的沉浸式模式呢？
首先你应该确定自己是否真的需要这个功能，因为除了像游戏或者视频软件这类特殊的应用，大多数的应用程序都是用不到沉浸式模式的。
当你确定要使用沉浸式模式，那么只需要重写Activity的onWindowFocusChanged()方法]]></description><category></category></item><item><title><![CDATA[MVP基类介绍]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78862559</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78862559</guid><author>Developer_Sir</author><pubDate>Thu, 21 Dec 2017 13:01:42 +0800</pubDate><description><![CDATA[View层的代码
public abstract class BaseMvpActivity> extends Activity {

    public abstract T initPresenter();
    public  T presnter ;

    @Override
    protected void onCreate(Bundle savedInstan]]></description><category></category></item><item><title><![CDATA[RecycleView多条目加载]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78859417</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78859417</guid><author>Developer_Sir</author><pubDate>Thu, 21 Dec 2017 08:34:31 +0800</pubDate><description><![CDATA[适配器
public class Shouyi_adapter extends RecyclerView.Adapter {
    public final static int TYPE_1 = 0;
    public final static int TYPE_2 = 1;
    public final static int TYPE_3 = 2;
    public f]]></description><category></category></item><item><title><![CDATA[TabLayout与ViewHolder的交互]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78856892</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78856892</guid><author>Developer_Sir</author><pubDate>Wed, 20 Dec 2017 19:57:03 +0800</pubDate><description><![CDATA[依赖

compile 'com.android.support:design:25.0.1'


布局

android.support.design.widget.TabLayout
    android:id="@+id/shou_tab"
    android:layout_width="match_parent"
    android:layout_height="5]]></description><category></category></item><item><title><![CDATA[SharedPreference的存值取值]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78856865</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78856865</guid><author>Developer_Sir</author><pubDate>Wed, 20 Dec 2017 19:53:37 +0800</pubDate><description><![CDATA[存值

SharedPreferences preference = getSharedPreferences("text", MODE_PRIVATE);

SharedPreferences.Editor editor = preference.edit();
editor.putBoolean("silentMode",true);
editor.commit();



取值，]]></description><category></category></item><item><title><![CDATA[视频播放的简单练习]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78856800</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78856800</guid><author>Developer_Sir</author><pubDate>Wed, 20 Dec 2017 19:45:24 +0800</pubDate><description><![CDATA[//加载视频依赖
compile 'fm.jiecao:jiecaovideoplayer:4.8.3'


Glide依赖
compile 'com.github.bumptech.glide:glide:3.7.0'



//视频网址，可以用这个测试
http://result.eolinker.com/iYXEPGn4e9c6dafce6e5cdd23287d2bb13]]></description><category></category></item><item><title><![CDATA[OKHttp的单例模式]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78729984</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78729984</guid><author>Developer_Sir</author><pubDate>Wed, 06 Dec 2017 13:58:47 +0800</pubDate><description><![CDATA[﻿﻿
import java.util.concurrent.TimeUnit;

import okhttp3.OkHttpClient;

/**
 * Created by d on 2015/12/5.
 */

public class OkHttpUtils {

    private static OkHttpClient client = null;

]]></description><category></category></item><item><title><![CDATA[ViewPager轮播适配器]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78613729</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78613729</guid><author>Developer_Sir</author><pubDate>Thu, 23 Nov 2017 13:18:41 +0800</pubDate><description><![CDATA[﻿﻿
public class SyFragmentAdapter extends PagerAdapter {
    FragmentActivity context;
    List syBean;
    public SyFragmentAdapter(FragmentActivity context, List syBean) {
    this.context = co]]></description><category></category></item><item><title><![CDATA[关于Recyview的条目点击事件]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78612089</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78612089</guid><author>Developer_Sir</author><pubDate>Thu, 23 Nov 2017 11:01:23 +0800</pubDate><description><![CDATA[﻿﻿
事件是从Adapter中执行的,这用到接口回调



然后条目设置点击事件把当前View传出去



最后MainActivity通过适配器调用set方法实现接口]]></description><category></category></item><item><title><![CDATA[自定义拦截器GET请求POST请求]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78607084</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78607084</guid><author>Developer_Sir</author><pubDate>Wed, 22 Nov 2017 19:12:38 +0800</pubDate><description><![CDATA[﻿﻿
public class LoggingInterceptor implements Interceptor {
  @Override public Response intercept(Chain chain) throws IOException {
    //首先取到Request
    Request request = chain.request();
    Re]]></description><category></category></item><item><title><![CDATA[购物车的逻辑代码与适配器]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78603080</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78603080</guid><author>Developer_Sir</author><pubDate>Wed, 22 Nov 2017 14:31:16 +0800</pubDate><description><![CDATA[Bean里添加的状态
            private int isFrist;   //是否选中商家
            public boolean shopSelected;  //商家多选是否选中
            public boolean itemSelected;   //条目多选是否选中


public class MyAdapter extends]]></description><category></category></item><item><title><![CDATA[MVP二级购物车布局和简单逻辑]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78602961</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78602961</guid><author>Developer_Sir</author><pubDate>Wed, 22 Nov 2017 14:07:53 +0800</pubDate><description><![CDATA[布局用到组合控件,适配器展示RecyclerView
http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent]]></description><category></category></item><item><title><![CDATA[Activity向Fragment中传值]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78533877</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78533877</guid><author>Developer_Sir</author><pubDate>Tue, 14 Nov 2017 19:07:18 +0800</pubDate><description><![CDATA[﻿﻿
activity向fragment中传值   
1。要传的值  放到Bundle对象里

2。通过创建传递封Fragment 将bundle对象 通过 setArguments（）传递到fragment

3.Fragment中 通过getArguments() 得到 bundle对象  就能得到里面的值




代码：
MainActivity:




]]></description><category></category></item><item><title><![CDATA[Android利用ListView实现多种Item的复杂布局]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78527193</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78527193</guid><author>Developer_Sir</author><pubDate>Tue, 14 Nov 2017 09:45:34 +0800</pubDate><description><![CDATA[﻿﻿
在Android开发中，可能会遇到一个可滚动且布局比较复杂的界面，但它并不是一个纯粹的List，类似如下图:


demo.png

通常实现方法可以直接用一个ScrollView将所有内容包起来，里面是列表的部分在代码中用动态添加布局的方式实现；或者外层ScrollView，里面列表部分用ListView(或RecyclerView)实现，但这样需要解决滑动冲突问题(有时并不能很好解]]></description><category></category></item><item><title><![CDATA[修改ActivityStudio项目名]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78461100</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78461100</guid><author>Developer_Sir</author><pubDate>Mon, 06 Nov 2017 19:52:17 +0800</pubDate><description><![CDATA[﻿﻿
项目名称修改了，想修改Android Studio 中 project的名字 
右键project 的名字，refactor - rename ，填写好新名字后修改，被提示 “can’t rename root module”


 


因为Android Studio只能修改根目录内的所有文件，要改project根目录名字，只能关闭Android Studio 先在操作系]]></description><category></category></item><item><title><![CDATA[自定义圆形,可根据鼠标移动,按下移动抬起事件]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78456645</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78456645</guid><author>Developer_Sir</author><pubDate>Mon, 06 Nov 2017 13:16:54 +0800</pubDate><description><![CDATA[﻿﻿
activity_main.xml
xml version="1.0" encoding="utf-8"?>
LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layou]]></description><category></category></item><item><title><![CDATA[自定义弧形进度条,百分比的值在变化]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78456634</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78456634</guid><author>Developer_Sir</author><pubDate>Mon, 06 Nov 2017 13:15:58 +0800</pubDate><description><![CDATA[﻿﻿
activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:]]></description><category></category></item><item><title><![CDATA[MVP入门,接口回调两种实现,new接口和implement实现,okhttpclient]]></title><link>https://blog.youkuaiyun.com/Developer_Sir/article/details/78456624</link><guid>https://blog.youkuaiyun.com/Developer_Sir/article/details/78456624</guid><author>Developer_Sir</author><pubDate>Mon, 06 Nov 2017 13:14:47 +0800</pubDate><description><![CDATA[﻿﻿
activity_main.xml布局


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    and]]></description><category></category></item></channel></rss>