浅谈如何静态创建Fragment

Android学习|Fragment__01静态、动态添加Fragment 什么是Fragment 1:具备生命周期 Fragment有生命周期,那么在一个activity可以使用多个Fragment,或者一个Fragment在多个activity 中重复使用,来完成一些效果 2、必须委托在activity中才能运行 则一个activity暂停,其中包含的所有的Framgment都会暂停 动态添加Fragment ... 阅读详情

在安卓3.0版本之后,安卓推出了fragment,可以这样理解,fragment是一种轻量级的Activity。
静态创建Activity,静态创建Fragment实际上是大同小异的。
我们先比较一下:
Activity:首先创建一个xml文件,然后创建与之对应的java文件,通过设置让两者关联,最后在主清单中进行注册。
Fragment:首先我们同样需要注册一个xml文件,然后创建与之对应的java文件,通过onViewCreate()的返回方法进行关联,最后我们需要在Activity中进行配置相关参数。
首先是XML文件,如下,只做了设置背景色

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:background="#ff0000"
    android:layout_height="match_parent"
    android:orientation="vertical" >


</LinearLayout>

接下来是java文件,我们需要复写onViewCreate()方法,代码如下

package com.example.fragment;

import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

public class Fragment1 extends Fragment {

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

        return inflater.inflate(R.layout.fragment1, null);

    }
}

这样二者就关联了,接下来我们在Activity中创建fragment的位置


    <fragment 
          android:id="@+id/fragment1"
         android:layout_width="0dip"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:name="com.example.fragment.Fragment1"

        />

这样我们就实现了静态的创建一个fragment的方法
总结,同样是同Activity一样的操作,fragment的要比Activity少一级

接下来是动态创建fragment,我们需要的就是将上面的第三步不要做,将这个步骤放在代码里面执行
1、我们首先应该得到一个FragmentManager
2、通过获得Fragment之后我们可以通过得到一个事件beginTransaction()
3、通过replace方法实现界面的动态变化
Deom代码如下:

FragmentManager  fm=getFragmentManager();
        FragmentTransaction fts=fm.beginTransaction();
        Fragment1 fragment1=new Fragment1();
        Fragment2 fragment2=new Fragment2();

        int width=getWindowManager().getDefaultDisplay().getWidth();
        int height=getWindowManager().getDefaultDisplay().getHeight();
        if(width>height)
        {
            fts.replace(android.R.id.content, fragment1);
        }
        else
        {
            fts.replace(android.R.id.content, fragment2);
        }
        fts.commit();

由于是事件,所以千万要记得提交。
总结,动态创建的方式就是,得到一个管理器,然后得到一个事件,然后通过事件里面的方法进行设置。

Android Fragment 浅谈 目录Fragment介绍Fragment版本Fragment Lifecycle生命周期继承Fragment Fragment介绍 下面是来自Google对Fragment的介绍: Fragment译指片段,片段是应用程序的用户界面或行为的一部分(可理解成一种UI交互界面),可以放在活动中。与片段的交互是通过FragmentManager完成的。 Fragment类可以使用多种方法来实现各种各样的结果。在其核心中,它代表了一个在更大的活动中运行的特定操作或接口。一个片段与它所处的活动密切相关,不能脱离一个片 阅读详情

相关推荐

fragment静态动态两种用法

android fragment 静态动态两种用法,代码写的比较简介,还是可以的的.

Android学习笔记 24. Fragment的产生、使用方法、静态(动态)添加fragment

Android学习笔记 24. Fragment的产生、使用方法、静态(动态)添加fragment

代码改变世界 938

(1)静态方式创建Fragment

本案例实现静态方式创建fragment; 核心思路如下: 将Fragment作为一个控件写入到activity布局文件中 说明: 这里的fragment导入的是android.app.Fragment;包

Fragment 的两种创建方式

Fragment 的两种创建方式

弱水三千只取一瓢饮 1万+

静态使用Fragment

静态使用Fragment的Demo!配合博客使用!

Delta-Sigma调制(DSM)技术

前言 数字信号处理和通信系统的性能很大程度上受到了模拟信号到数字信号转换接口——ADC的精度和分辨率的限制。而传统的线性脉冲编码调制(PCM)ADC受到了制造工艺的限制,无法达到很高的分辨率。但基于Delta-Sigma调制技术的ADC可以在现有工艺下实现高分辨率(大于16位),同时由于结构简单,所以易于实现。低成本高性能使得Delta-Sigma调制技术得到了广泛的应用。 Delta-Sigma型ADC的结构原理图如下图所示: 它最大的优势在于仅用1位ADC进行数据转换,同时其模拟电路部分结构简单不需要

阿星的博客 2万+

Fragment学习记录一 静态创建fragment

好记性不如烂笔头吧,以前很少记录,现在开始记录学习笔记静态创建Fragment 把Fragment当成普通的控件,直接写在Activity的布局文件中, 用布局文件调用Fragment例如: android:name=”com.mytest.fragmentall.create.TitleFragment” 步骤:1、在Activity中xml 声明此fragment,就当和普通的View一

oYangChun的专栏 562

RK3568部署YOLOv8的7种方法对比:量化vs非量化的性能实测与优化建议

本文针对RK3568平台,深度对比了YOLOv8模型的七种部署方法,重点分析了量化与非量化策略的性能差异。通过实测数据,详细评估了不同方法在推理速度、CPU占用、内存消耗及模型精度上的表现,并提供了从模型结构调整到系统级优化的具体建议,为边缘AI部署选型提供实用参考。

weixin_29099217的博客 527

Fragment(碎片)的静态创建

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34055910的博客 194

Oracle监听配置

Oracle监听配置## 标题 选择“监听程序配置”,然后下一步。 选择重新配置,然后下一步/。 不用管,按下一步。 下一步。 选择“否”,下一步。 选择"本地net服务名配置",然后下一步。 选择“重新配置”,然后下一步。 服务名 是"Oracle",然后下一步。 主机为你的IP地址,在doc系统下通过"ipconfig"获取IP地址。然后输入,然后下一步。 选择“是,进行测试...

m0_46079215的博客 806

开源收银系统_大型收银系统源码_OctShop

开源收银系统正成为大型连锁企业数字化转型的关键工具。相比传统闭源系统,开源方案具有成本低(年均降本60%+)、定制灵活(支持多业态协同)、自主可控等优势,能有效解决高并发、多门店数据同步等痛点。核心价值在于:1)分布式架构适配规模化扩张;2)模块化设计实现个性化开发;3)开放接口打通ERP/CRM等系统。典型案例显示,连锁商超通过源码二次开发实现库存实时同步,补货效率提升50%;餐饮集团统一多业态收银流程后会员复购率增长35%。选型需关注源码成熟度、技术兼容性和安全合规,建议采用"开源+服务商&q

OctShop全栈工程师 938

浅谈Fragment

一.为什么要用Fragment (1)多个Activity切换 在多个activity中的多界面切换过程或者单个界面动态的改变中,fragment是必不可少的组件。 它是activity的一部分,但是又相对独立,有着自己的生命周期,能够接收和处理事件。 所以多个activity能够用重复的Fragment类,这是通过降低Fragment与相关的activity的耦合实现的。 (2)配置单个Activity 一个activity能够拥有多个Fragment.在多个Fragment的配合中, Activity充

P_douglas的博客 221

[pcie]gen6 下 L0p

000b~100b: 触发L0p 操作流程协商工作link width 到target link width.为111b:link width 硬件动态调整。硬件动态:Device control 3 register.target link width=111b当pcie链路检测到空闲状态时,设备可以主动进入L0p状态。L0p 是pcie gen6 新引入的链路状态,是L0的子状态。(5)LINK WIDTH:当LINK WIDTH CHANGE.cmd为Request时表示请求的链路宽度。

BIG_APPLE1的博客 1676

浅谈fragment

Fragment 要讨论fragment首先我们得知道什么是fragment,fragment有什么用,我们为什么要使用fragment,在安卓中,fragment有着相当重要的作用,那么,我们今天就来浅谈一下fragment Fragment是什么 相信大家对QQ肯定不陌生,那么我们都知道,QQ上有以下几个按钮 对应的分别是联系人,空间,群组和消息,而当我们点击其中一个时,就会切换到...

qq_38842722的博客 400

UVM仿真卡住了?别慌!手把手教你定位并解决PH_TIMEOUT超时错误

本文详细解析了UVM仿真中常见的PH_TIMEOUT超时错误,提供了从错误诊断到解决方案的完整指南。通过理解错误机制、分析调试技巧和常见问题场景,帮助验证工程师快速定位并解决这一棘手问题,同时分享了预防措施与最佳实践,提升仿真效率。

weixin_28683065的博客 367

金融领域强化学习在高频交易中的应用

强化学习(Reinforcement Learning,简称RL)是一种机器学习范式,通过智能体与环境的交互来学习策略,以最大化累计奖励。与监督学习和无监督学习不同,强化学习依赖于动态的反馈机制,智能体通过试错不断优化决策过程。高频交易(High-Frequency Trading,简称HFT)是指在极短时间内进行的大量金融交易,通常利用算法和计算机系统自动执行交易策略。高频交易依赖于高速的数据处理和决策能力,以捕捉市场中的微小价格波动。状态(State):环境在某一时刻的观测,反映了系统的当前情况。

AI天才研究院 891

浅谈Android中的Fragment

一,什么是Fragment? Fragment是一种可以嵌入在activity当中的一个模块化和可重复利用的组件,它可以定义自己的布局和监听事件,以及通过使用它自己的生命周期回调方法来定义的它自己的行为。 Fragment的设计理念:允许你把Activity中的布局文件分散到几个不同的Fragment中,通过管理Fragment来管理布局。这样,可以非常轻松的实现“phone”

147

LPDDR6与LPDDR5 ZQ Calibration技术探讨

LPDDR6与LPDDR5 ZQ Calibration技术探讨

zilan23的博客 1099

浅谈 Vue3 静态提升和预字符串化

对vue3 静态提升和预字符串化的一些浅薄理解

赵花花的博客 1805

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

android Fragment浅谈

对于Fragment我们可以将它认为是activity中的模块,一个activity可以添加多个Fragment,而这些Fragment有自己的布局,有自己的生命周期,单独处理自己的输入,在activity运行时可以加载或者移除Fragment模块。 一:在activity中添加Fragment存在两种方式: 静态添加: <fragment android:i...

weixin_30649641的博客 84

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

浅谈Android中的 Fragment、生命周期回调方法 以及使用

fragment的介绍, 生命周期的介绍以及生命周期回调方法的 作用。 实际中运用到的 如何管理Fragment

gjy_it的博客 2万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

浅谈 Android组件化

plugin属性的配置applicationId的配置AndroidManifest的配置} else {android {release {main {} else {如果以上配置就可以实现application和library的切换了3:组件间的数据传递和方法调用由于主项目、组件之间,组件和组件之间不能直接通过引用进行数据传递和方法调用,那么在开发的过程中怎么进行数据传递和方法调用呢,可以通过「接口」+「实现」的方式进行,

2401_84132685的博客 911

浅谈Vue3的优势

Vue3具有的优点以及最简化的学习版本

程序猿开发日志【学习永无止境】 3233
上一篇: 安卓四大组件之一————————Activity
下一篇: BroadcastReceiver
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值