Android fragment简单用法


在静态创建fragment中

Android 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);
    }
}

 

原创文章,作者:,如若转载,请注明出处:https://blog.ytso.com/272458.html

(0)
上一篇 2022年7月9日
下一篇 2022年7月9日

相关推荐

发表回复

登录后才能评论