1-AVI--Fragment基础使用

简介: 零、前言[1].Fragment静态使用[2].Fragment动态使用一、Fragment静态使用静态fragment.jpg1.

零、前言

[1].Fragment静态使用
[2].Fragment动态使用

一、Fragment静态使用

静态fragment.jpg
1.蓝色布局:blue.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/colorPrimary"
                android:orientation="vertical" >
    <TextView
        android:id="@+id/blue_tv"
        android:layout_centerInParent="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:text="蓝色Fragment"
        />
</RelativeLayout>
2.黄色布局:yellow.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
                android:background="@color/yellow"
              android:orientation="vertical" >
    <TextView
        android:id="@+id/yellow_tv"
        android:layout_centerInParent="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:text="黄色Fragment"
        />
</RelativeLayout>
3.黄色Fragment:YellowFragment.java
/**
 * 作者:张风捷特烈<br/>
 * 时间:2018/8/28 0028:13:07<br/>
 * 邮箱:1981462002@qq.com<br/>
 * 说明:黄色Fragment
 */
public class YellowFragment extends Fragment {

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {

        return inflater.inflate(R.layout.yellow, container, false);
    }
}
4.绿色Fragment:BlueFragment.java
/**
 * 作者:张风捷特烈<br/>
 * 时间:2018/8/28 0028:13:07<br/>
 * 邮箱:1981462002@qq.com<br/>
 * 说明:绿色Fragment
 */
public class BlueFragment extends Fragment {

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        
        return inflater.inflate(R.layout.fragment_bottom, container, false);
    }
}

5.主布局:layout/activity_static.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".activity.ActFragmentActivity">

    <fragment
        android:id="@+id/yellow_fragment1"

        android:name="com.toly1994.avi_fragment.staticFg.YellowFragment"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"/>

    <View
        android:background="@color/gray_8f"
        android:layout_width="match_parent"
        android:layout_height="1dp"/>

    <fragment
        android:id="@+id/yellow_fragment2"

        android:name="com.toly1994.avi_fragment.staticFg.YellowFragment"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"/>

    <fragment
        android:id="@+id/blue_fragment"
        android:name="com.toly1994.avi_fragment.staticFg.BlueFragment"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="4"/>
</LinearLayout>
6.使用:StaticFragmentActivity.java
public class StaticFragmentActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_static);
    }
}

二、动态使用

public class ActFragmentActivity extends FragmentActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_acti);
        initFragment();
    }

    /**
     * 动态加载Fragment
     */
    private void initFragment() {
        FragmentManager fm = getFragmentManager();//1.获取FragmentManager
        FragmentTransaction ft = fm.beginTransaction();//2.fm开启事务
        //3.动态添加 (控件id,fragment对象)
        ft.add(R.id.fl_title, new YellowFragment());
        ft.add(R.id.fl_content, new BlueFragment());
        ft.commit();//4.提交事务
    }
}
动态使用fragment.png

后记、

1.声明:

[1]本文由张风捷特烈原创,转载请注明
[2]欢迎广大编程爱好者共同交流
[3]个人能力有限,如有不正之处欢迎大家批评指证,必定虚心改正
[4]你的喜欢与支持将是我最大的动力

2.连接传送门:

更多安卓技术欢迎访问:安卓技术栈
我的github地址:欢迎star
简书首发,腾讯云+社区同步更新
张风捷特烈个人网站,编程笔记请访问:http://www.toly1994.com

3.联系我

QQ:1981462002
邮箱:1981462002@qq.com
微信:zdl1994328

4.欢迎关注我的微信公众号,最新精彩文章,及时送达:
公众号.jpg
相关文章
|
6月前
|
安全 Java Shell
Android11以上 Audio音频调试方法
Android11以上 Audio音频调试方法
486 0
|
自然语言处理 PHP 数据安全/隐私保护
带你写一个Mp文件解析器-Mp3文件结构全解析(一)
ID3V2一共有四个版本,ID3V2.1/2.2/2.3/2.4,目前流行的播放软件一般只支持第三版即ID3V2.3,由于ID3V1记录在文件的末尾处,ID3V2就只能记录在文件的首部了,也是因为这个原因,对ID3V2的操作比ID3V1要慢,而且ID3V2的结构比ID3V1的结构复杂的多,但是ID3V2可以记录更多的信息,长度可变
23309 4
|
算法 索引
带你写一个Mp文件解析器-Mp3文件结构全解析(二)
每个FRAME 都有一个帧头FRAMEHEADER,长度是4BYTE(32bit),帧头后面可能有两个字节的CRC 校验,这两个字节的是否存在决定于FRAMEHEADER 信息的第16bit, 为0 则帧头后面无校验,为1 则有校验,校验值长度为2 个字节,紧跟在FRAMEHEADER 后面,接着就是帧的实体数据了
213 0
|
编解码 vr&ar Android开发
Android FFmpeg 转换MP3格式
Android FFmpeg 转换MP3格式
262 0
|
Java Android开发
|
API Android开发
【Android 高性能音频】Oboe 开发流程 ( 创建并设置 AudioStreamCallback 对象 | 打开 Oboe 音频流 | 日志封装 logging_macros.h )
【Android 高性能音频】Oboe 开发流程 ( 创建并设置 AudioStreamCallback 对象 | 打开 Oboe 音频流 | 日志封装 logging_macros.h )
274 0
|
Android开发
5-AVI--Fragment简单封装
零、前言 [1].每次写Fragment要加载布局,为布局设置内容,挺麻烦的,搞个基类简单封装一下吧 [2].一般封装基类使用模板方法设计模式,基类中做一些常用的不变东西,需要拐点弯的逻辑就弄个抽象方法延迟到子类 [3].
1028 0
|
XML Android开发 数据格式
3-AVI--Activity与Fragment的数据传递
零、前言 [1].Activity向Fragment传数据 [2].Fragment向Activity传数据 [3].Fragment向Fragment传数据 一、Activity向Fragment传数据效果: ac2fg.
947 0