1688黄页大全进口,优化网站链接的方法,游戏工作室加盟需要什么条件,福州关键词seo一 fragment的介绍
一 什么是fragment? fragment是一个小的activity,点击不同的item,会显示不同的界面,这个界面就是fragment. 可以在多个activity中重复使用一个fragment,所以可以把fragment视为activity中的模块化的组成部分二 为什么有fragment? 使页面动态灵…一 fragment的介绍
一 什么是fragment? fragment是一个小的activity,点击不同的item,会显示不同的界面,这个界面就是fragment. 可以在多个activity中重复使用一个fragment,所以可以把fragment视为activity中的模块化的组成部分二 为什么有fragment? 使页面动态灵活设计 为了让activity能更简洁地配置画面三 fragment的特点? 1 Fragment 有自己的生命周期 2 必须委托在activity中才能运行(所以Fragment的生命周期受activity影响),当activity销毁时,fragment就没了 3 当activity运行时,可以独立操作fragment,动态增加移除一些fragment 4 fragment可以自己接收输入事件 二 fragment的基本使用步骤
此文写的是静态fragment,动态fragment请点这里
step1 new一个 Fragment,写fragment的xmlstep2 Fragment.java里 1 解析fragment的xml root inflater.inflate(R.layout.fragment_blank1,container,false); 2 随便写点操作step3 activity_main.xml 1 写fragment标签 2 用name属性关联上之前写的fragment.java文件名 3 加id(不然运行时会报错)step4 多个fragment 1 添加多个Fragment.java的文件 2 activity_main.xml里再添加多个fragment标签,设置权重layout_weight
三 代码
step1 new一个 Fragment,写fragment的xml fragment_blank1.xml
?xml version1.0 encodingutf-8?
LinearLayout xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:toolshttp://schemas.android.com/toolsandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentandroid:orientationverticaltools:context.BlankFragment1TextViewandroid:idid/textViewandroid:layout_widthmatch_parentandroid:layout_height40dpandroid:text你好美女 /Buttonandroid:idid/btnandroid:text回复android:layout_widthwrap_contentandroid:layout_heightwrap_content//LinearLayout step2 Fragment.java里
BlankFragment1.java
package com.example.myfragment;import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;public class BlankFragment1 extends Fragment {private View root;private TextView textView;private Button btn;Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);}NullableOverridepublic View onCreateView(NonNull LayoutInflater inflater, Nullable ViewGroup container, Nullable Bundle savedInstanceState) {if(root null){//解析fragment的xmlroot inflater.inflate(R.layout.fragment_blank1,container,false);}textView root.findViewById(R.id.textView);btn root.findViewById(R.id.btn);//随便写一个点击事件btn.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {textView.setText(你也好);}});return root;}
} step3 activity_main.xml
?xml version1.0 encodingutf-8?
LinearLayoutandroid:layout_heightmatch_parentandroid:layout_widthmatch_parentandroid:orientationverticalxmlns:androidhttp://schemas.android.com/apk/res/android fragmentandroid:idid/fragment1android:namecom.example.myfragment.BlankFragment1android:layout_weight1android:layout_widthwrap_contentandroid:layout_heightmatch_parent/fragmentandroid:idid/fragment2android:namecom.example.myfragment.BlankFragment2android:layout_weight1android:layout_widthwrap_contentandroid:layout_heightmatch_parent//LinearLayout
step4 多个fragment 效果 点击第一个fragment的按钮之后