zoukankan      html  css  js  c++  java
  • 带视图缓存的动态布局

    import android.app.Activity;
    import android.os.Bundle;
    import android.os.Handler;
    import android.os.Message;
    import android.util.Log;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.LinearLayout;
    
    public class PadTestActivity extends Activity {
    
        View chacheView;
    
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            // setContentView(R.layout.main);
    
            LayoutInflater inflater = LayoutInflater.from(this);
            final View mainView = inflater.inflate(R.layout.main, null);
            // Add first page
            LinearLayout myFirst = (LinearLayout) inflater.inflate(R.layout.first, null).findViewById(R.id.myFirst);
            LinearLayout layoutFirst = (LinearLayout) mainView.findViewById(R.id.LayoutFirst);
            layoutFirst.removeAllViews();
            layoutFirst.addView(myFirst); // Show the page first
            
            // Add second page
            LinearLayout mySecond = (LinearLayout) inflater.inflate(R.layout.second, null).findViewById(R.id.mySecond);
            LinearLayout layoutSecond = (LinearLayout) mainView.findViewById(R.id.LayoutSecond);
            layoutSecond.removeAllViews();
            layoutSecond.addView(mySecond);
            
            // Add third page
            LinearLayout myThird = (LinearLayout) inflater.inflate(R.layout.third, null).findViewById(R.id.myThird);
            LinearLayout layoutThird = (LinearLayout) mainView.findViewById(R.id.LayoutThird);
            layoutThird.removeAllViews();
            layoutThird.addView(myThird);
    
            setContentView(mainView);
            
            chacheView = myFirst;
    
            Button btnDelete = (Button) mainView.findViewById(R.id.btnDelete);
            btnDelete.setOnClickListener(new OnClickListener() {
                public void onClick(View v) {
    
                    LinearLayout layoutFirst = (LinearLayout) mainView.findViewById(R.id.LayoutFirst);
                    layoutFirst.removeAllViews();
                }
            });
            
            Button btnAdd = (Button) mainView.findViewById(R.id.btnAdd);
            btnAdd.setOnClickListener(new OnClickListener() {
                public void onClick(View v) {
                    
                    LinearLayout layoutFirst = (LinearLayout) mainView.findViewById(R.id.LayoutFirst);                
                    if (chacheView != null) {
                        layoutFirst.addView(chacheView);
                    }                            
                }
            });
        }
        
    }
  • 相关阅读:
    Node.js
    EFCore-Migrations
    C#核心语法
    C#编程总结--总目录
    PHP ServerPush
    汉字转拼音
    用五分钟重温委托,匿名方法,Lambda,泛型委托,表达式树
    Sublime Text 3 绝对神器
    多线程学习总结
    分享: 利用Readability解决网页正文提取问题
  • 原文地址:https://www.cnblogs.com/makeryan/p/2495751.html
Copyright © 2011-2022 走看看