zoukankan      html  css  js  c++  java
  • fragment之间的通信

    Fragment有一个公共的桥梁 Activity

    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            
            //[1]获取Fragment的管理者
            FragmentManager fragmentManager = getFragmentManager();
            //[2]开启事物 
            FragmentTransaction transaction = fragmentManager.beginTransaction();
            //[3]动态替换
            transaction.replace(R.id.ll1, new Fragment1(),"f1");
            transaction.replace(R.id.ll2, new Fragment2(),"f2");
            
            //[4]最后一步 记得commit
            transaction.commit();
            
            
        }
    
    
    }
    public class Fragment1 extends Fragment {
    
        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
            View view = inflater.inflate(R.layout.fragment1, null);
            //[1]找到按钮设置点击事件 
            view.findViewById(R.id.button1).setOnClickListener(new OnClickListener() {
                
                @Override
                public void onClick(View v) {
    
                    Toast.makeText(getActivity(), "jagjajgl", 1).show();
                    //[2]修改Fragment2里面textview的值 
                    Fragment2 f2 = (Fragment2) getActivity().getFragmentManager().findFragmentByTag("f2");
                    f2.setText("haahha");
                    
                }
            });
            
            return view;
        }
    }
    public class Fragment2 extends Fragment {
    
        private TextView tView;
    
    
        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
            View view = inflater.inflate(R.layout.fragment2, null);
            
            tView = (TextView) view.findViewById(R.id.tv);
            
            return view;
        }
        
        
        //修改textview值的方法
        public void setText(String content){
            tView.setText(content);
        }
    }
  • 相关阅读:
    网络流24题
    可持久化Treap
    后缀平衡树
    bzoj2561-最小生成树
    poj3164-Command Network
    最小树形图
    hdu2121-Ice_cream’s world II
    线性处理逆元
    bzoj3992-序列统计
    JavaScript 类型转换
  • 原文地址:https://www.cnblogs.com/xufengyuan/p/6123718.html
Copyright © 2011-2022 走看看