Android-Fragment的创建

使用手机录制rosbag包 使用手机作为便携式数据采集设备来录制rosbag。 阅读详情

Fragment的创建

一.静态Fragment的创建

首先在left_fragment.xml中添加一个人Button按钮,right_fragment.xml中添加一个textView;
其次分别创建对应的.java文件,让LeftFragment和RightFragment都继承Fragment,并重写onCreatView()方法。如:

public class LeftFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.left_fragment, container, false);//将left_fragment布局加载进来
return view;
}
}

最后在activity_main.xml中:

<fragment
android:id="@+id/left_fragment"
android:name=“com.example.fragmenttest.LeftFragment”//通过这个属性来显示的指明要添加的碎片类名,注意一定要将类的包名也加上
android:layout_width=“0dp”
android:layout_height=“match_parent”
android:layout_weight=“1”/>

二.动态Fragment的创建

首先在left_fragment.xml中添加一个人Button按钮,right_fragment.xml中添加一个textView;
其次分别创建对应的.java文件,让LeftFragment和RightFragment都继承Fragment,并重写onCreatView()方法。如:

public class LeftFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.left_fragment, null);
}
}

然后在activity_main.xml中添加两个容器:



最后在MainActivity.java中:

public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

    //FragmentManager:Activity内部用来与Fragment进行交互的接口
    FragmentManager fragmentmanager = getFragmentManager();
    //开启一个事务
    FragmentTransaction transaction = fragmentmanager.beginTransaction();
    
    LeftFragment leftfragment = new LeftFragment();
    RightFragment rightfragment = new RightFragment();
    //将左侧的那个leftfragment添加到R.id.left_fragment中
    transaction.add(R.id.left_fragment, leftfragment);
    transaction.add(R.id.right_fragment, rightfragment);
    
    transaction.commit();//提交事务
}

}

静态加载的方式

1.自定义一个类FragmentLeft继承系统的Fragment
public class FragmentLeft extends Fragment{
public View onCreateView(LayoutInflater inflater ,ViewGroup container , Bundle savedInstanceState){
View view = inflater.inflate(R.laryout.activity_left);
return view;
}
}

FragmentLeft的布局

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android=“http://schemas.android.com/apk/res/android”

android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:background="#5f00"
    android:orientation="vertical" >


<TextView 
    
    android:id="@+id/textView_fragmentleft"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="我是FramgnetLeft"/>

2.再自定义一个FragmentRight继承系统Fragment
public class FragmentRight extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
/**
* 1.要加载的布局的资源id
* 2.当前布局的父布局
* 3.是否需要追加到父布局
*/
View view = inflater.inflate(R.layout.activity_fragmentright, container, false);
return view;
}
}

FragmentRight的布局

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android=“http://schemas.android.com/apk/res/android”

android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:background="#50f0"
    android:orientation="vertical" >


<TextView 
    
android:id="@+id/textView_fragmentright"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="我是FramgnetRight"/>

3.MainActivity
public class MainActivity extends Activity {

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

}

ainActivity布局
在main_activity中注册fragment标签

<fragment 
    android:id="@+id/fragemntleft"
    android:layout_width="0dp"
    android:layout_weight="1"
    android:layout_height="match_parent"
    android:name="com.ljavadroid.day16_fragmentstatics.FragmentLeft"
    android:tag="fragment1_tag"/>

<fragment 
    android:id="@+id/fragemnt2"
    android:layout_width="0dp"
    android:layout_weight="1"
    android:layout_height="match_parent"
    android:name="com.ljavadroid.day16_fragmentstatics.FragmentRight"
    android:tag="fragment2_tag"/>

动态加载Fragment
1.自定义类FragmentLeft继承Fragment
public class FragmentLeft extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.activity_left, container,false);
return view;
}
}

FragmentLeft布局

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android=“http://schemas.android.com/apk/res/android”

android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical" >


<TextView 
    
   android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:text="fragment_left"
   
   />

2.自定义FragmentRight继承Fragment
public class FragmentRight extends Fragment{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.activity_right, container,false);
return view;
}
}

FragmentRight布局

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android=“http://schemas.android.com/apk/res/android”

android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical" >


<TextView 
    
   android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:text="fragmentright"
    
   />

3.MainActivity
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获取Fragment的管理者对象 FragmentManager:用来在Framgent和Activity之间交互的接口
FragmentManager fragmentManager = getFragmentManager();
//将add remove replace等等操作称为事务
FragmentTransaction transaction = fragmentManager.beginTransaction();
//参数1表示fragment添加到Activity的区域的id 2.表示需要具体添加的Fragment对象
transaction.add(R.id.layout_container_leftFragment, new FragmentLeft());
transaction.add(R.id.layout_container_rightFragment, new FragmentRight());

    /**
     *transaction.remove(fragment);
     *transaction.replace(containerViewId, fragment);
     *transaction.hide(fragment)
     *transaction.show(fragment);
     */
    //提交事务--->保存
    transaction.commit();
}

在activity_main布局里面添加两个LinearLayout用于放Fragment


<LinearLayout
    android:id="@+id/layout_container_rightFragemnt"
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="1"
    android:orientation="vertical"
    android:background="#500f" >     
</LinearLayout>
英飞凌 AURIX TC3XX 系列单片机的链接文件 这篇介绍英飞凌 AURIX TC3XX 系列单片机的链接文件,主要是针对使用 SOTA 功能如何修改链接文件,完整地实现 SOTA 功能 阅读详情

相关推荐

光伏发电预测(LSTM、CNN_LSTM和XGBoost回归模型,Python代码)

一旦结果与预测差距较大,可能存在光伏系统的问题,需要找出原因,然后采取适当措施来修复光伏系统并做出更好的决策。例如,根据准确的预测,光伏系统运营商可以平衡电力消耗,并将多余的电力储备用于紧急情况。然而,光伏系统的发电量估算是一个挑战,因为光伏系统的发电量受到天气条件的极大影响。整个项目文件夹(第一个文件夹为xgboost模型相关的包文件,xg.py是xgboost模型英文注释版本,xg_chinese.py是xgboost模型中文注释版本)表示空气的温度,通常以摄氏度(°C)或华氏度(°F)为单位。

2301_79699110的博客 3034

Android开发之动态添加Fragment

1、创建Fragment子类 public class Fragment1 extends Fragment { private View root; @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public View onCreateView(@

qq_27549693的博客 1562

Unidbg补环境实战:复现Shopee风控Native层运行环境

Android App风控已从HTTP层签名校验,演进为深度依赖Native层系统调用与硬件特征的多维验证。其核心原理在于通过JNI桥接Java与Native代码,调用openat、sysconf、getrandom等系统接口读取/proc、/sys、/dev等路径的真实状态,并结合SELinux策略、CPU拓扑、分区哈希等硬性指标构建设备可信画像。这种技术架构显著提升了对抗黑灰产的能力,但也对逆向分析与自动化调用提出更高要求——必须精准模拟底层环境而非仅Hook逻辑。Unidbg补环境正是为此而生:它支持

weixin_30533109的博客 640

android fragment创建,Android — 创建和修改 Fragment 的方法及相关注意事项

如何创建 fragment activitypublic class FooFragment extends Fragment {@Overridepublic View onCreateView(LayoutInflater inflater,ViewGroup container, Bundle savedInstanceState) {// 为fragment提供 XML 布局文件retur...

weixin_42160645的博客 530

C2000 CLA协处理器:嵌入式实时控制性能优化与实战指南

在嵌入式实时控制系统中,主CPU常因高频率、低延迟的控制算法而面临性能瓶颈。为解决此问题,协处理器技术应运而生,它通过硬件并行架构分担计算密集型任务,从而提升系统整体性能。其核心原理在于独立的计算单元与总线设计,能够实现近乎零延迟的响应,这对于电机驱动、数字电源等闭环控制场景具有极高的技术价值。本文聚焦于德州仪器C2000系列微控制器中的控制律加速器(CLA),深入解析其作为独立浮点协处理器如何通过任务调度与消息RAM通信机制,有效实现性能倍增,并提供了从内存配置到代码调试的完整工程实践方案。

weixin_29192211的博客 305

UDS 诊断 - CommunicationControl(通信控制)(0x28)服务 诊断

字节参数名称字节值#1CommunicationControl(通信控制)请求SID0x28#2#3communicationType(通信类型)#4nodeIdentificationNumer(节点标识符)(高位字节)controlType 为 0x04 或 0x05 时,使用该参数#5nodeIdentificationNumer(节点标识符)(低位字节)controlType 为 0x04 或 0x05 时,使用该参数。

耳朵东金子千的博客 1822

Android之Fragment

Fragment创建,Fragment生命周期

蔡林浩的博客 3189

[特殊字符] PetaLinux Qt 程序(WindRadar)无法自动启动问题解决文档

摘要:本文档解决了PetaLinux 2020.1系统中Qt程序(WindRadar)无法开机自动显示界面的问题。通过分析发现,自动启动时缺少DISPLAY=:0.0环境变量导致Qt找不到显示设备。最终在autostart.sh脚本中添加该变量,并完善了字体加载、驱动加载、显示设备检测等流程,确保程序正常自启显示界面。完整脚本包含路径检测、环境配置和错误处理,经验证各项功能均正常运行。

梁俊星的博客 328

Fragment的创建

Fragment 的创建与 Activity 的创建类似,要创建一个 Fragment 必须要创建一个类继承自 Fragment 。

weixin_52973401的博客 1651

激光雷达点云配准:ICP与NDT算法详解

激光雷达点云配准:ICP与NDT算法详解​ ,人工智能,计算机视觉,大模型,AI,本文深入解析激光雷达点云配准的ICP与NDT算法。阐述了点云配准基础概念与评价指标,详解ICP算法原理、流程、最优变换矩阵计算、优缺点及改进版,给出Python代码示例;同样解析NDT算法的原理、流程、模型构建、优缺点、参数选择与代码示例。还对比两者在精度、效率、鲁棒性和适用场景的差异,提供算法选择建议,介绍实际应用案例、常见问题及解决方法,探讨算法发展趋势。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 15万+

zabbix系列:内存VM.MEMORY.SIZE监控之total、free、pused、available 参数说明

free -m buffer是即将要被写入磁盘的,而cache是被从磁盘中读出来的. zabbix Web total:1046/1024=1.02G Available:216/1046=20.65% zabbix参数 total- 总物理内存. free- 可用内存. active- 内存当前使用或最近使用,所以它在RAM中。 inactive- 未使用内存. wired- 被标记为始终驻留在RAM中的内...

NIO4444 5669

Android基础之Fragment

本文旨在记录在Android Studio学习中关于Fragment的部分学习过程提示:以下是本篇文章正文内容Fragment 表示应用界面中可重复使用的一部分。Fragment 定义和管理自己的布局,具有自己的生命周期,并且可以处理自己的输入事件。Fragment 不能独立存在,而是必须由 Activity 或另一个 Fragment 托管。Fragment 的视图层次结构会成为宿主的视图层次结构的一部分,或附加到宿主的视图层次结构。

fjnu_se的博客 1867

全志V3S嵌入式驱动开发(驱动开发准备)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 之前的文章都是教大家怎么搭建环境、看原理图、编译内核和根文件系统、做镜像,直到现在才进入驱动开发的主题。毕竟整个专栏的目的,还是希望大家能够学会驱动外部硬件。驱动好硬件,分成硬件和软件两个部分,硬件的部分比较好理解,就是看相关的信号有没有对接上即可,但是软件对接、甚至于怎么写软件,大家好像接触的比较少,所以这个时候,就可以简单讨论一下,怎么样才能写驱动代码。 1、了解外部驱动芯

嵌入式-老费,一个分享专业嵌入式知识的blog 2025

3-1.Android Fragment 之创建 Fragment

Fragment 可以视为 Activity 的一个片段,它具有自己的生命周期和接收事件的能力,它有以下特点

weixin_52173250的博客 2313

OV9734 DATASHEET,完整规格书

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

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

android 动态创建Fragment

android 动态创建Fragment

zhouguizhi 1959

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Android fragment 重复创建问题

如何显示Fragment 基本有两种方式: replace FragmentManager fragmentManager = getSupportFragmentManager(); FragmentTransaction transaction = fragmentManager.beginTransaction(); transaction.replace(R.id.fl_container, currentFragment).commit(); 多个 fragment 互相切换时,本质上

ming54ming的博客 2510

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

android移除fragment,Fragment 的创建、替换与移除

一、前言Fragment 是从 Android 3.0 开始引入的,翻译过来就是碎片的意思。Fragment 的作用以及使用场景我就不赘述了。这篇博文我们就主要讲 Fragment 的创建、替换与移除这三个操作,至于 Fragment 的生命周期、如何与 Activity 进行通信等内容我们会在后面陆续讲到的。一、Fragment 的创建要使用 Fragment,可以通过继承 Fragment 类...

weixin_34987986的博客 1635

android 代码生成fragment,详解Android中Fragment的两种创建方式

fragment是Activity中用户界面的一个行为或者是一部分。你可以在一个单独的Activity上把多个Fragment组合成为一个多区域的UI,并且可以在多个Activity中再使用。你可以认为fragment是activity的一个模块零件,它有自己的生命周期,接收它自己的输入事件,并且可以在Activity运行时添加或者删除。两个概念:Fragment、宿主fragment的生命周期直...

weixin_35216469的博客 524

android动态生成fragment,动态创建Fragment

动态创建fragment的流程1.0 新建一个类继承fragment.2.0 在自定义的fragment里面复写oncreateVIew的方法3.0 在onCreateVIew的方法里使用inflate填充器4.0 通过Return方法把inflate得到View对象给返回出去5.0 在使用fragment的activity里面调用getFragmentManager方法.得到fragmentMa...

weixin_30069113的博客 1225

android移除fragment,关于android:Fragment-的创建替换与移除

一、前言Fragment 是从 Android 3.0 开始引入的,翻译过去就是碎片的意思。Fragment 的作用以及应用场景我就不赘述了。这篇博文咱们就次要讲 Fragment 的创立、替换与移除这三个操作,至于 Fragment 的生命周期、如何与 Activity 进行通信等内容咱们会在前面陆续讲到的。一、Fragment 的创立要应用 Fragment,能够通过继承 Fragment 类...

weixin_33117401的博客 1039

android fragment创建,Fragment的两种创建方式

一.静态加载的方式自定义一个类继承Fragment实现onCreateView()方法 当系统第一次绘制fragment的用户界面时回调的方法.onCreateView()方法中加载XML文件,返回当前Fragment布局转化的View对象把Fragment添加到Activity中1.自定义一个类FragmentLeft继承系统的Fragmentpublic class FragmentLeft ...

weixin_42303461的博客 1201

Android中Fragment创建

首先要为Fragment创建好xml和java程序并关联在一起。 xml进行的是Fragment的界面设计(就像一个Activity)  Java程序中要继承Fragment,创建OncreateView方法如: 如果 return view不写会无法运行app(创建完OncreateView方法自动补充的不是return view需更改) 在MainAcitivity的xml中添加F...

AIOT魔法师 6321

android fragment 选项卡,Android用Fragment创建选项卡

本文结合之前的动态创建fragment来进行一个实践,来实现用Fragment创建一个选项卡项目布局xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"too...

weixin_36313743的博客 282

android 之fragment创建

1.使用xml标签 1.1定义两个重要属性   <fragment android:id="@+id/fregment_top" android:layout_width="match_parent" android:layout_height="220dp" android:layout_marginTop="...

a821048508的博客 163

android 创建选项卡,Android用Fragment创建选项卡

本文结合之前的动态创建fragment来进行一个实践,来实现用fragment创建一个选项卡项目布局xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"too...

weixin_33502772的博客 277

Android 动态创建fragment

在实际开发中静态的fragment几乎用的很少,比如在某个场景下使用布局,随着条件的变化又显示另外一个布局,那么这时候把布局写死就不是很适合,所以得 动态创建fragment, activity_main.xml文件:     xmlns:tools="http://schemas.android.com/tools"     android:layout_width="match_pa

欧阳锋 671
上一篇: Android-主题和样式
下一篇: Android-Activity与Fragment的生命周期
Android_xi
博客等级 码龄8年 4粉丝 59原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值