Fragment间的交互
发布日期:2021-06-30 21:21:47 浏览次数:3 分类:技术文章

本文共 2153 字,大约阅读时间需要 7 分钟。

Fragment间的交互 

    使用回调的方式,让FragmentActivity充当中间交互的桥梁。 

public class MainActivity extends AppCompatActivity implements OnClickIndexOnclick{    private FragmentManager fragmentManagerf;    private  downFragment down;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        fragmentManagerf = getSupportFragmentManager();        down=(downFragment) fragmentManagerf.findFragmentByTag("down");    }    @Override    public void onClick(int index) {        down.setIndex(index);    }}
public interface OnClickIndexOnclick {//桥接器    void onClick(int index);}
public class TopFragment extends Fragment{    private  int index=1;    private OnClickIndexOnclick onClickIndexOnclick;    @Nullable    @Override    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {        View view=inflater.inflate(R.layout.top_layout,null);        Button button = view.findViewById(R.id.onclick);        button.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                index++;                Index(index)                ;            }        });        return view;    }    @Override    public void onActivityCreated(@Nullable Bundle savedInstanceState) {        super.onActivityCreated(savedInstanceState);        this.onClickIndexOnclick=(OnClickIndexOnclick) getActivity();//获取Activity的对象返回Activity        Index(index);    }    private void Index(int index){        Log.v("wang",""+index);        onClickIndexOnclick.onClick(index);    }}
public class downFragment extends Fragment{    private TextView textView;    @Nullable    @Override    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {        View view=inflater.inflate(R.layout.down_layout,null);        textView =view.findViewById(R.id.textViewId);        return view;    }    public void setIndex(int index) {        textView.setText("当前点击了"+index+"次");        textView.setTextSize(30);    }}
 

       MianActivity

转载地址:https://liwangjiang.blog.csdn.net/article/details/79916228 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Fragment里面的onSaveInstanceState转换屏幕时保存数据
下一篇:Fragment的操作FragmentTransactio

发表评论

最新留言

初次前来,多多关照!
[***.217.46.12]2024年04月23日 03时29分43秒