`
sarin
  • 浏览: 1758008 次
  • 性别: Icon_minigender_1
  • 来自: 大连
博客专栏
E3b14d1f-4cc5-37dd-b820-b6af951740bc
Spring数据库访问系列...
浏览量:173784
C2083dc5-6474-39e2-993e-263652d27795
Android学习笔记
浏览量:368247
5f40a095-b33c-3e8e-8891-606fcf3b8d27
iBatis开发详解
浏览量:189379
B272a31d-e7bd-3eff-8cc4-c0624ee75fee
Objective-C学习...
浏览量:99956
社区版块
存档分类
最新评论

Android学习笔记12:框架布局管理器FrameLayout

阅读更多
    接上文
    框架布局管理器是Android布局管理器之一,之前并没有接触过。简单来说,框架布局管理器是将组件都放在屏幕的左上角,所有的组件是层叠显示的。首先来看一下FrameLayout的文档:

    那么它的继承结构为:
java.lang.Object
   ↳ android.view.View
   ↳ android.view.ViewGroup
   ↳ android.widget.FrameLayout

    这和LinearLayout是类似的。下面我们创建一个项目来看看FrameLayout:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
    <ImageView
        android:id="@+id/img"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:contentDescription="这是一个图片"
        android:src="@drawable/ic_launcher" />
    <TextView
        android:id="@+id/text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="这是提示文字" />
    <Button android:id="@+id/btn" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="这是按钮"/>
</FrameLayout>

    这里需要注意的就是之前使用的LinearLayout,现在需要改为FrameLayout,也就是我们使用的框架布局管理器。其中放置三个组件,这都是我们很熟悉的内容了,不用过多解释,下面直接运行程序来看一下效果:

    正如我们之前所说的,所有组件均在左上角叠加显示了。
    和LinearLayout类似,要在程序中控制FrameLayout就会涉及到FrameLayout类和FrameLayout.LayoutParams类,我们就可以通过这两个类来对框架布局管理器进行控制了。下面还是先来看一下FrameLayout.LayoutParams的文档:

    这也是一个静态类,其继承结构为:
java.lang.Object
   ↳ android.view.ViewGroup.LayoutParams
   ↳ android.view.ViewGroup.MarginLayoutParams
   ↳ android.widget.FrameLayout.LayoutParams

    下面我们通过代码来控制FrameLayout:
	这也是一个静态类,其继承结构为:
java.lang.Object
   ↳ android.view.ViewGroup.LayoutParams
 	   ↳ android.view.ViewGroup.MarginLayoutParams
 	 	   ↳ android.widget.FrameLayout.LayoutParams
	下面我们通过代码来控制FrameLayout:

    可以看出,这和LinearLayout的操作方式是类似的。下面来执行一下程序:

    可以看到,这和我们使用XML布局文件的显示效果是一致的。
    本部分代码请参考附件
    接下文
  • 大小: 61.6 KB
  • 大小: 27.6 KB
  • 大小: 65.7 KB
  • 大小: 28.7 KB
4
2
分享到:
评论
1 楼 qianguming 2013-09-29  
紧紧跟随12

相关推荐

    很好的android学习笔记

    【Android学习笔记】 Android是一种基于Linux内核的开源操作系统,主要应用于移动设备,如智能手机和平板电脑。这个“很好的android学习笔记”包含了作者在学习Android开发过程中积累的宝贵经验,旨在帮助初学者或...

    Android学习笔记(二二): 多页显示-Tag的使用.doc

    【Android多页显示与Tag的使用】 在Android开发中,多页显示通常涉及到Tab界面,这是一种用户友好的设计,使得用户能够...同时,随着Android框架的发展,使用Fragment进行Tab管理已经成为现代Android开发的首选方式。

    android 学习笔记

    ### Android学习笔记知识点详解 #### 一、电话拨号功能实现 在Android开发中,实现电话拨号功能可以通过使用系统自带的意图(Intent)对象来完成。具体步骤如下: 1. **创建Intent对象**:首先需要创建一个Intent...

    android学习笔记

    ### Android学习笔记知识点详解 #### 一、Android平台组成 1. **Linux内核**:作为Android的基础,提供了操作系统的核心功能,如硬件驱动程序、内存管理等。 2. **Android运行时**:主要包括了核心库(实现Java...

    学习安卓的笔记

    2. 常见的布局管理器: - `RelativeLayout`: 相对布局,允许子View相对于其他View的位置进行布局,灵活性较高。 - `AbsoluteLayout`: 绝对布局,每个子View的位置可以通过绝对的像素坐标来指定,但不推荐使用,...

    Android开发教程笔记完全版(第6-10篇)

    教程中提到了"应用3、4 布局",这可能包括线性布局(LinearLayout)、相对布局(RelativeLayout)、框架布局(FrameLayout)以及网格布局(GridLayout)等。线性布局按照垂直或水平方向排列元素,相对布局根据各个...

    新版Android开发教程 笔记10--基础UI编程4

    在基础UI编程中,我们将学习几种常见的布局管理器,如线性布局(LinearLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)以及约束布局(ConstraintLayout)。线性布局按照垂直或水平方向排列子视图,而...

    android实习日报

    【Android实习日报】是关于Android开发实习过程中的学习与工作经验的总结,主要涵盖...在【zwq日报】中,你可能会看到实习生在这些方面的学习笔记和实践案例,通过分析和模仿,你可以更快地提升自己的Android开发技能。

    android studio开发app项目一个待办事项列表应用

    常见的布局有线性布局(LinearLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)以及约束布局(ConstraintLayout)等,其中约束布局在现代Android开发中被广泛使用,因为它允许更灵活的布局设计。...

    2019移动互联A卷林丰波.docx

    - **常用布局**:`GridLayout` 和 `FrameLayout` 是 Android 应用界面设计中常用的两种布局类型。`GridLayout` 用于实现网格形式的布局,易于控制每个单元格的位置和大小;`FrameLayout` 则是一种简单的布局方式,...

    Android界面设计(APP设计趋势 左侧隐藏菜单右边显示content)

    在Android界面设计中,一种流行的趋势是采用左侧隐藏菜单与右侧显示内容的布局方式,这种设计模式被广泛应用于各种移动应用程序中,如ZAKER、百度新闻、100tv和印象笔记等。这种设计风格源自于WP8的平面界面设计理念...

Global site tag (gtag.js) - Google Analytics