Skip to content

Commit

Permalink
添加destory生命周期同步
Browse files Browse the repository at this point in the history
  • Loading branch information
Zane96 committed Jul 17, 2016
1 parent 86d19a8 commit fa0562a
Show file tree
Hide file tree
Showing 11 changed files with 10 additions and 47 deletions.
Original file line number Diff line number Diff line change
@@ -1,21 +1,15 @@
package com.example.zane.demo.presenter;

import android.app.ProgressDialog;
import android.content.Context;
import android.util.Log;
import android.view.ViewGroup;

import com.example.zane.demo.Bean.Data_One;
import com.example.zane.demo.Bean.Data_Two;
import com.example.zane.demo.Bean.RecycleviewData;
import com.example.zane.demo.R;
import com.example.zane.demo.view.DataOneViewHolder;
import com.example.zane.demo.view.DataTwoViewHolder;
import com.example.zane.easymvp.presenter.BaseListAdapterPresenter;
import com.example.zane.easymvp.view.BaseListViewHolderImpl;

import java.util.ArrayList;
import java.util.IllegalFormatException;
import java.util.List;

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,10 @@
package com.example.zane.demo.view;

import android.support.annotation.LayoutRes;
import android.util.Log;
import android.util.SparseArray;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

import com.example.zane.demo.Bean.Data_One;
import com.example.zane.demo.Bean.RecycleviewData;
import com.example.zane.demo.R;
import com.example.zane.easymvp.view.BaseListViewHolderImpl;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,10 @@

import android.support.annotation.LayoutRes;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import android.widget.Toast;

import com.example.zane.demo.App;
import com.example.zane.demo.Bean.Data_Two;
import com.example.zane.demo.Bean.RecycleviewData;
import com.example.zane.demo.R;
import com.example.zane.easymvp.view.BaseListViewHolderImpl;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,15 @@

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.widget.Toast;

import com.example.zane.demo.App;
import com.example.zane.demo.R;
import com.example.zane.demo.presenter.MyRecycleviewAdapter;
import com.example.zane.easymvp.view.BaseViewImpl;

import butterknife.Bind;
import butterknife.ButterKnife;

/**
* Created by Zane on 15/12/20.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import android.app.Activity;
import android.content.Context;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.example.zane.easymvp.view;
package com.example.zane.easymvp.base;

import android.app.Activity;
import android.content.Context;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,11 @@
package com.example.zane.easymvp.presenter;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;

import com.example.zane.easymvp.view.IView;

import java.io.Serializable;

import butterknife.ButterKnife;
import com.example.zane.easymvp.base.IView;


/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,17 +1,15 @@
package com.example.zane.easymvp.presenter;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v7.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

import com.example.zane.easymvp.view.IView;
import com.example.zane.easymvp.base.IView;

/**
* Created by Zane on 15/12/18.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,12 @@
import android.content.Context;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;

import com.example.zane.easymvp.base.IListModel;
import com.example.zane.easymvp.view.BaseListViewHolderImpl;

import java.lang.reflect.Array;
import java.sql.ResultSetMetaData;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,15 +36,15 @@ public BaseListViewHolderImpl(ViewGroup parent, @LayoutRes int res){
initView();
}

public abstract void initView();
protected abstract void initView();

public abstract void setData(M data);

protected final <T extends View> T $(@IdRes int id) {
private final <T extends View> T $(@IdRes int id) {
return (T) view.findViewById(id);
}

public final <T extends View> T bindView(int id) {
private final <T extends View> T bindView(int id) {
T view2 = (T) mViews.get(id);
if (view2 == null) {
view2 = $(id);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,14 @@
package com.example.zane.easymvp.view;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.support.annotation.IdRes;
import android.support.v7.app.AppCompatActivity;
import android.util.SparseArray;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

import java.io.Serializable;
import com.example.zane.easymvp.base.IView;

import butterknife.ButterKnife;

Expand All @@ -19,12 +17,11 @@
* Created by Zane on 15/12/18.
* 将view加载的过程写在抽象类,做到代码复用。
*/
public abstract class BaseViewImpl implements IView{
public abstract class BaseViewImpl implements IView {

protected View view;
protected final SparseArray<View> mViews = new SparseArray<>();

@Override
public final void creatView(LayoutInflater inflater, ViewGroup parent, Bundle bundle) {
int resourceId = getRootViewId();

Expand All @@ -35,29 +32,24 @@ public final void creatView(LayoutInflater inflater, ViewGroup parent, Bundle bu
view = inflater.inflate(resourceId, parent, false);
}

@Override
public final View getRootView() {
return view;
}

@Override
public abstract int getRootViewId();

//添加注解view方式
@Override
public final void initView() {
ButterKnife.bind(this, view);
}

@Override
public final void removeView() {
ButterKnife.unbind(this);
}

@Override
public abstract void setActivityContext(Activity activity);

public final <T extends View> T bindView(int id) {
private final <T extends View> T bindView(int id) {
T view2 = (T) mViews.get(id);
if (view2 == null) {
view2 = $(id);
Expand All @@ -70,7 +62,7 @@ public final <T extends View> T get(int id) {
return (T) bindView(id);
}

protected final <T extends View> T $(@IdRes int id) {
private final <T extends View> T $(@IdRes int id) {
return (T) view.findViewById(id);
}

Expand Down

0 comments on commit fa0562a

Please sign in to comment.