zoukankan      html  css  js  c++  java
  • Fragment学习

    利用Fragment可以动态的加载页面,减少Activity的数量。

    便于开发

    类似与html中FragmentSet一样

    嵌套在一起,使每个页面为独立的

    代码如下:

    package com.example.chaoba.study;
    
    import android.app.FragmentManager;
    import android.app.FragmentTransaction;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.TextView;
    
    public class MainActivity extends AppCompatActivity {
    private Dongtai dongtai;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            Button butn1=findViewById(R.id.butn1);
            butn1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    FragmentManager fragmentManager = getFragmentManager(); //加载一个Fragment需要先创建管理器,
                    FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();  //获取FragmentTransaction对象
                    if (dongtai==null){
                        dongtai=new Dongtai();
    
                    }
    
                    fragmentTransaction.replace(R.id.content,dongtai);  //移除所有,然后添加    或者    add方法
                    fragmentTransaction.commit();//提交
                }
            });
    
        }
    }
    package com.example.chaoba.study;
    
    import android.app.Fragment;
    import android.os.Bundle;
    import android.support.annotation.Nullable;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.TextView;
    
    /**
     * Created by chaoba on 18-5-31.
     */
    
    public class Dongtai extends Fragment implements View.OnClickListener{
           TextView tv;
        View view;
        @Nullable
        @Override
        public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
             view=inflater.inflate(R.layout.dongtai,container,false);  //创建view
    
    
    
            return view;
        }
    
    
    
    
        @Override
        public void onActivityCreated(@Nullable Bundle savedInstanceState) {
            super.onActivityCreated(savedInstanceState);
    //重写本方法,用于编写业务逻辑。 initView(); tv.setText(
    "11111111111111"); tv.setOnClickListener(this); //测试点击事件,效果 11111变成5555 } public void initView(){ tv = view.findViewById(R.id.textView2); } public void test(){ tv.setText("5555555"); } @Override public void onClick(View view) { switch (view.getId()){ case R.id.textView2:test();break; } } }
    一万年太久,只争朝夕!
  • 相关阅读:
    CF932E Team Work(第二类斯特林数)
    BZOJ 3732: Network(Kruskal重构树)
    BZOJ 2753: [SCOI2012]滑雪与时间胶囊(最小生成树)
    BZOJ 2286: [Sdoi2011]消耗战(虚树+树形dp)
    hdu 4336 Card Collector(状压dp/Min-Max反演)
    BZOJ 3622: 已经没有什么好害怕的了(二项式反演)
    BZOJ 2839: 集合计数(二项式反演)
    CF gym 101933 K. King's Colors(二项式反演)
    BZOJ 1101: [POI2007]Zap(莫比乌斯反演)
    BZOJ 3747: [POI2015]Kinoman(线段树)
  • 原文地址:https://www.cnblogs.com/chaoba/p/9149178.html
Copyright © 2011-2022 走看看