android 页面切换的View方式


package com.zipingfang.app.yawan.base;

import java.util.Stack;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;

/**
* @category View管理
* @author yuepengfei
* */
public class ViewUtil implements ViewUtilInterface {

private Stack<View> mViews;

@Override
public void addView(View view, ViewGroup layout) {
layout.addView(view);
}

@Override
public void updateView(Context context,View view, ViewGroup layout) {
boolean isHas = false;
if (null == mViews) {
mViews = new Stack<View>();
}

if (mViews.size() > 0) {
for (int i = 0; i < mViews.size(); i++) {
if (view == mViews.get(i)) {
isHas = true;
mViews.get(i).setVisibility(View.VISIBLE);
} else {
mViews.get(i).setVisibility(View.GONE);
}
}
}

if (!isHas) {
layout.addView(view);
mViews.add(view);
}
}

public int getViewNum() {
return null == mViews ? 0 : mViews.size();
}

public void removeTopView(ViewGroup layout) {
if (null != mViews) {
if (mViews.size() > 1) {
layout.removeView(mViews.get(mViews.size() - 1));
mViews.remove(mViews.size() - 1);
mViews.get(mViews.size() - 1).setVisibility(View.VISIBLE);
}
}
}

@Override
public void removeView(View view, ViewGroup layout) {
layout.removeView(view);
mViews.remove(view);
}

@Override
public void removeAllviews(ViewGroup layout) {
layout.removeAllViews();
mViews.clear();

}
}

优质内容筛选与推荐>>
1、Unity C# 操控行为类
2、CommonJS、AMD和RequireJS、NodeJS之间的关系
3、C++ sizeof的使用总结
4、kali linux wifi破解(aircrack)
5、datatable中的copy和clone的用法区分


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号