`
huangbq
  • 浏览: 30440 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

FrameLayout 初体验

阅读更多

最近学习了android的布局样式标签,布局样式标签一共有5个,其中FrameLayout(单帧布局)是最简单的一个布局对象。它被定制为你屏幕上的一个空白备用区域,之后你可以在其中填充一个单一对象 — 比如,一张你要发布的图片。所有的子元素将会固定在屏幕的左上角;你不能为FrameLayout中的一个子元素指定一个位置。后一个子元素将会直接在前一个子元素之上进行覆盖填充,把它们部份或全部挡住(除非后一个子元素是透明的),可以用include标签载入定义的另一个layout文件,现在用一个ProgressBar的例子学习一下FrameLayout。


首先,我们创建一个布局文件,
res/layout/fullscreen_loading.xml, 其内容如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:gravity="center_vertical|center_horizontal"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent  
    android:id="@+id/fullscreen_loading"
    android:visibility="gone"
    >
    <ProgressBar
        android:layout_gravity="center_vertical"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        style="?android:attr/progressBarStyleSmall"
        >
    </ProgressBar>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5.0dip"
        android:text="loading..."
        >
    </TextView>
</LinearLayout>
然后在main.xml 把它include 进来
<?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"
    >
    <LinearLayout
        android:orientation="vertical"
        android:visibility="gone"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
    </LinearLayout>
    <include
        android:visibility="visible"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        layout="@layout/fullscreen_loading"
        >
    </include>
</FrameLayout>

主程序 LoadingActivity.java:
package com.google.android.test;

import android.app.Activity;
import android.os.Bundle;
import android.widget.LinearLayout;

public class LoadingActivity extends Activity {

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}
运行的效果为:
分享到:
评论
3 楼 huangbq 2011-03-14  
cqh520llr 写道
findheart 写道
请教:用include的目的和意义是什么?为什么不直接写在main.xml里?

一样的,

jsp的<%@ include file=” ”%>应该知道吧!道理一样,都是为了文件的重用,比如说,一些头文件或者导航文件,很多xml中都用到,这样只需include一下就行了,当然本例子中include的意义不大!
2 楼 cqh520llr 2011-03-09  
findheart 写道
请教:用include的目的和意义是什么?为什么不直接写在main.xml里?

一样的,
1 楼 findheart 2011-02-21  
请教:用include的目的和意义是什么?为什么不直接写在main.xml里?

相关推荐

    FrameLayout

    FrameLayout是Android开发中的一种布局容器,主要用于展示一个或多个视图(Views)在一个单一的叠加层上。在FrameLayout中,子视图通常按照从上到下的顺序进行堆叠,最后一个添加的视图通常会覆盖其他视图,除非设置...

    FragmentTabHost FrameLayout实现底部导航栏

    FragmentTabHost 和 FrameLayout 实现底部导航栏 FragmentTabHost 和 FrameLayout 是 Android 中实现底部导航栏的常见方法。下面将详细介绍如何使用 FragmentTabHost 和 FrameLayout 实现底部导航栏,并提供一个...

    FrameLayout+底部栏切换

    在Android应用开发中,"FrameLayout+底部栏切换"是一个常见的设计模式,它用于构建具有多个主内容区域并可以通过底部导航栏在这些区域之间切换的应用界面。这种布局方式提供了直观的用户交互,使得用户能够轻松地在...

    android demo,FrameLayout的使用,该实例实现了一个美女在地图上的行走。

    FrameLayout是Android SDK中的一个布局容器,主要用于展示一个或多个视图(Views)在一个特定的框架内,通常这些视图会重叠放置。这个布局在许多简单场景中非常有用,例如,当您需要一个背景视图和一个浮于其上的...

    Android中帧布局FrameLayout的特点.pdf

    在Android开发中,帧布局(FrameLayout)是一种基础且重要的布局方式,主要特点是其子视图(View)按照层叠的方式进行排列。...了解并熟练掌握其特点和用法,对于提升Android应用的用户体验和界面设计质量至关重要。

    FrameLayout布局完成霓虹灯效果

    此外,为了增强用户体验,开发者可能会使用到触摸事件监听,使得用户可以通过滑动或点击来控制霓虹灯的开关或颜色变化。这需要对View的onTouchEvent()方法进行处理,解析用户的输入行为并作出相应的响应。 在实际...

    滑动页面里面套滑动广告(ViewPager+FrameLayout)

    在这个案例中,我们使用了ViewPager和FrameLayout两个核心组件来实现这一功能。让我们深入探讨这两个组件以及如何将它们结合使用。 **1. ViewPager组件** ViewPager是Android SDK中的一个强大工具,主要用于展示...

    Android下拉刷新列表(仿新浪微博,采用FrameLayout布局)

    本教程将详细讲解如何实现一个类似新浪微博的下拉刷新列表,采用`FrameLayout`布局作为基础。 首先,我们要理解`FrameLayout`。`FrameLayout`是Android中的一个布局容器,它按照从上到下的顺序堆叠子视图。当多个...

    19Android-04-frameLayout.mp4

    19Android-04-frameLayout.mp4

    TabHost+FrameLayout实现底部选项卡

    然而,随着Android版本的更新,谷歌推荐使用BottomNavigationView或者Material Design的BottomAppBar组件来实现底部选项卡,因为它们提供了更好的用户体验和更现代的设计风格。 需要注意的是,TabHost在新版本的...

    FrameLayout练习

    FrameLayout在Android开发中是一种基础且重要的布局管理器,它为开发者提供了在屏幕上精确控制视图(Views)位置的能力。本练习旨在帮助新手理解和熟练掌握FrameLayout的使用,从而为后续更复杂的布局设计打下坚实的...

    自定义FrameLayout实现手势滑动控制各组件的分层显示

    同时,添加平滑的动画可以使用户体验更佳。可以通过ObjectAnimator或者ValueAnimator实现平滑过渡的效果,使得子视图在层级变化时有自然的移动感。 为了便于使用,自定义的MyFrameLayout应该提供一些公开方法,比如...

    模仿墨迹天气的天气展示, 使用FrameLayout实现

    FrameLayout在Android开发...不过,实际应用中可能会涉及更多复杂的设计和交互,如动画效果、滑动切换城市等,这些都是进一步提升用户体验的关键。在学习和实践中,不断探索和优化,才能更好地掌握Android布局的运用。

    ViewPage + RadioGroup + Fragment + FrameLayout搭配解析

    ViewPage + RadioGroup + Fragment + FrameLayout搭配解析,RadioGroup 里面有四个RadioButton切换,上面用ViewPage滑动,两边关联,可以相互的切换。也做了用FrameLayout可切换和不可切换的。

    Android-ImageView和FrameLayout拥有手势控制和定位动画

    总之,在Android开发中,`ImageView`和`FrameLayout`通过手势控制和定位动画可以提供丰富的用户交互体验。通过理解并熟练运用`GestureDetector`、`ObjectAnimator`等相关技术,开发者可以创建出更加生动、直观的应用...

    Android Framelayout显示静态和动态的扑克牌

    在Android开发中,Framelayout是一个非常基础且重要的布局组件,它允许开发者在一个特定的区域堆叠多个视图,而这些视图的层级关系决定了它们的显示顺序。标题"Android Framelayout显示静态和动态的扑克牌"暗示我们...

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

    本篇我们将深入探讨`FrameLayout`,这是一个非常基础但灵活的布局管理器,它允许你在屏幕上精确地控制视图的位置。`FrameLayout`的名称来源于“框架”,它就像是一个画框,每个子视图都在这个框架内进行绘制,通常是...

    Android中帧布局FrameLayout的常用属性.pdf

    Android帧布局(FrameLayout)是Android开发中一种基础且重要的布局类型,它允许开发者在一个屏幕上叠加多个视图(views)。帧布局以其简洁性和灵活性,在实现简单的界面设计时非常有用。下面将详细介绍帧布局...

Global site tag (gtag.js) - Google Analytics