ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Android fragment简单用法

2022-05-19 15:01:15  阅读:328  来源: 互联网

标签:String fragment savedInstanceState 用法 radio Android public view


在静态创建fragment中

 

 注意fragment是一个类似于界面的一个元件,因此,还需要为fragment建立一个activity用于存放我们建立的fragment

也就是说需要建立一个空的activity和一个空的fragment项目,activity项目用于承载fragment项目

在fragment标签内

可以通过name属性对我们的fragment项目进行绑定

    <fragment
        android:id="@+id/fragment"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        tools:layout="@layout/fragment_static"
        android:name="com.example.belowmeue.fragment.StaticFragment"/>

以下代码是fragment基本用法

public class StaticFragment extends Fragment {
    private TextView textview;
    private RadioButton radio_like,radio_dislike;

    // TODO: Rename parameter arguments, choose names that match
    private static final String ARG_PARAM1 = "param1";
    private static final String ARG_PARAM2 = "param2";

    private String mParam1;
    private String mParam2;

    public StaticFragment() {
    }


    public static StaticFragment newInstance(String param1, String param2) {
        StaticFragment fragment = new StaticFragment();
        Bundle args = new Bundle();
        args.putString(ARG_PARAM1, param1);
        args.putString(ARG_PARAM2, param2);
        fragment.setArguments(args);
        return fragment;
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (getArguments() != null) {
            mParam1 = getArguments().getString(ARG_PARAM1);
            mParam2 = getArguments().getString(ARG_PARAM2);
        }
    }
    //这是创建视图时调用的方法
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_static, container, false);
    }
    //这是视图创建完成后调用的方法,其中view承载的就是fragment所绑定的页面
    //也就是说可以在这个方法内对fragment页面内的元件进行操作
    @Override
    public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        textview = view.findViewById(R.id.textview);
        radio_like = view.findViewById(R.id.ridio_like);
        radio_dislike = view.findViewById(R.id.ridio_dislike);

        radio_like.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
                if(b){
                    textview.setText("APP喜欢");
                }
            }
        });
        radio_dislike.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
                if (b) {
                    textview.setText("APP不喜欢");
                }
            }
        });
    }
    //这是activity创建完成所调用的方法,也可以在这里面写元件操作的代码
    @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
    }
}

 

标签:String,fragment,savedInstanceState,用法,radio,Android,public,view
来源: https://www.cnblogs.com/-0112/p/16288493.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有