我想之前很多面试官问过这个问题,你如何对不同屏幕,不同分辨率大小的屏幕进行处理,因为相同的布局到不同的屏幕上,完全就不一样了,其中一个解决方法是使用dp,dp不是确定尺度,随着不同屏幕它将会做出相对的位置,有点像是比例尺,打个比方现在放的一个按键距离左边2dp,现在换一个大两倍的设备,那么同样,放进去的比例也是一样。当然你直接调Activity也是可以的,但是只能用一次,如何多次使用在不同的设备呢,这里就涉及到了碎片问题,就是Fragment。
Android 3.0以后引入了一个新的核心类就是Fragment,事实上我也不止被面试官问过一次这样的问题,似乎面试安卓的时候,这个问题尤为重要,当时只是涉及到,并没有深究,今天就来把Fragment好好过一遍。
【重用】重用(chong)功能是Fragment得到重用(zhong)的重要原因,毕竟大家不想辛辛苦苦写出来的东西只能用一次吧。
【横屏竖屏】本来布局为上下,作为横屏以后,你当然希望它能合理的成为左右,但是在小的屏幕上,这样的情况就很“尴尬了”虽然两个都出来了,但是都挤得很,于是我就想到分页,左右滑动来看这两个页面,对的碎片的概念非常接近于分页,其实作为Activity也能做到这样的功能,只是大材小用了。最重要的是,当用户点了back键以后,就真的是退出了。而碎片,点了这个back后,还在这个活动中。
【碎片的生命周期】
碎片虽然有自己的生命周期,终归来说还是依附于Activity,具体代码实现就可以提现出这一点,这个你可以以去看我上一篇博客,老大与小弟的故事。
碎片被创建时:onAttach()-->onCreate()-->onCreateView()-->onActivityCreated();
碎片进入后台模式时:onPause()-->onStop();
碎片变为可见时:onStart()-->onResume();
碎片被销毁时:onPause()-->onStop()-->onDestroyView()-->onDestroy()-->onDetach();
到onDetach 的时候,该碎片就不会跟活动绑定了。资源也被释放
相关推荐
Fragment表现Activity中用户界面的一个行为或者是一部分。你可以在一个单独的activity上把多个fragment组合成为一个多区域的UI,并且可以在多个activity中再使用。你可以认为fragment是activity的一个模块零件,它有...
在"碎片fragment入门demo"中,我们将探讨Fragment的基本概念、生命周期、以及如何在实际应用中使用。 1. **Fragment基本概念** Fragment是Android SDK中的一个类,它可以包含一部分UI视图和相关的业务逻辑。它并不...
在“碎片fragment布局demo”中,我们看到一个应用场景是通过底部菜单实现页面切换。这种设计模式通常被称为“底部导航栏”或“BottomNavigationView”,它提供了在多个主要内容区域之间轻松切换的功能,而无需离开...
标题"Fragment碎片"指的是在Android应用中使用Fragment类来创建和管理用户界面组件。通过Fragment,开发者可以在不重新启动Activity的情况下,实现界面的动态切换和更新,提高用户体验。 描述"点击按钮切换不同的...
在"fragment碎片"这个主题中,我们将深入探讨如何利用Fragment构建类似微信那样复杂且互动丰富的界面。 Fragment可以看作是Activity的一部分,它有自己的生命周期和UI视图。它们可以单独存在,也可以与Activity一起...
Android 碎片 Fragment 实现静态加载的实例代码 Android 碎片 Fragment 是 Android 开发中一种非常重要的组件,用于将一个用户界面分割成多个独立的区域,每个区域可以独立更新自己的状态,实现静态加载可以使得...
Fragment(碎片)是一种可以在Activity中灵活地插入和删除的用户界面组件。它主要用于优化平板电脑等大屏幕设备上的用户界面,使得应用程序能够根据不同的屏幕尺寸提供更加丰富的布局。 **应用场景:** 1. **多...
在给定的标题“用Fragment实现的Emoji表情碎片,可以重用到项目中”中,我们可以理解到这是一个关于如何利用Fragment来创建一个显示Emoji表情的功能组件。这个组件设计得足够通用,可以在多个不同的项目中复用。 ...
在Android应用开发中,"碎片"(Fragment)和"对话框碎片"(DialogFragment)是两个重要的组件,它们主要用于构建动态、可复用且适应不同屏幕尺寸的应用界面。以下是这两个概念的详细说明。 **碎片(Fragment)** ...
在Android应用开发中,"Fragment碎片"是一种可重用的UI组件,它可以在Activity的不同部分显示内容。在大型应用如支付宝中,底部菜单栏(Bottom Navigation Bar)是常见的设计模式,用于提供多页面间的快捷导航。本文...
在Android应用开发中,Fragment(碎片)是一种非常重要的组件,特别是在设计大屏幕设备如平板电脑时,它使得界面布局更加灵活多变。本教程将详细讲解如何在Android Studio中实现一个四分格Fragment的示例。 ...
以上就是关于"Fragment嵌套Fragment实现多tab页面"项目的一些关键知识点,这个项目不仅展示了Fragment的使用,还涉及到界面设计、事件处理和性能优化等多个方面,对于提升Android开发技能非常有帮助。
在Android应用开发中,Fragment是实现界面模块化和动态化的重要组件。Fragment设计的主要目标是使得应用程序能够在不同屏幕尺寸和配置变化中保持灵活性。在本文中,我们将探讨如何利用Fragment来实现一个底部标题栏...
Fragment是Android应用开发中的一个重要组件,它首次出现在Android 3.0版本(API level 11)中,主要是为了在大屏幕设备如平板电脑上更好地实现界面布局和交互。然而,随着时间的推移,Fragment也成为了手机应用开发...
Android Fragment(碎片)应用Demo(开发工具Android Studio),主要代码: AnotherRightFragment fragment = new AnotherRightFragment(); FragmentManager fragmentManager = getFragmentManager(); ...
效果图看上一版本http://www.apkbus.com/android-116690-1-1.html,上一版本是利用activitygroup实现底部菜单切换,基于现在都不太赞同用,于是简单地利用fragment 来实现了这一效果,IndexActivity为底部菜单的首页...
Fragment的概念是从Android3.0开始引入的,直译为碎片、片段,目的是为不同屏幕大小的设备(手机、平板等)创建灵活动态的UI。诚如其名,你可以把Fragment当作是Activity的模块化组件,它拥有自己的生命周期和UI,接受...
"Fragment Photoshop Action" 是一款专为Adobe Photoshop设计的特效动作插件,主要用于为图像添加独特的碎片粒子飞溅效果。这款工具极大地简化了复杂的设计过程,让设计师能够在几秒钟内将普通的图片转化为充满动感...
Fragment是Android系统自3.0版本(API Level 11)引入的一个重要组件,它极大地丰富了应用的界面设计和用户体验。Fragment设计的初衷是为了更好地适应大屏幕设备,如平板电脑,但随着时间的发展,它已经成为Android...