正常情况下,我们开发的应用程序都会上占满整个屏幕,那么怎么样才能开发出自定义窗口大小的的程序呢?如下图所示:
实现起来非常简单。
第一步,创建一个背景配置文件float_box.xml,放到res/drawable下,如下所示(如看不懂可查看本站:):
<?xml version="1.0" encoding="utf-8"?>
<!--
** Copyright 2010, Ideasandroid
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#ffffff" />
<stroke android:width="3dp" color="#000000" />
<corners android:radius="3dp" />
<padding android:left="10dp" android:top="10dp" android:right="10dp"
android:bottom="10dp" />
</shape>
第二步,定义一个对话框样式,放到res/values/styles.xml,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2010 IdeasAndroid
-->
<resources>
<!-- 定义一个样式,继承android系统的对话框样式 android:style/Theme.Dialog-->
<style name="Theme.FloatActivity" parent="android:style/Theme.Dialog">
<!-- float_box为我们定义的窗口背景-->
<item name="android:windowBackground">@drawable/float_box</item>
</style>
</resources>
第三步,创建一个视图配置文件res/layout/float_activity.xml,一个ImageView和一个TextView,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2010 IdeasAndroid
-->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:id="@+id/ideasandroidlogo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:src="@drawable/ideasandroid"
/>
<TextView android:layout_width="wrap_content" android:text="@string/ideasandroidIntr"
android:layout_height="wrap_content"
android:layout_below="@id/ideasandroidlogo"
android:textColor="@android:color/black"
/>
</RelativeLayout>
第四步创建我们的Activity,如下所示:
public class FloatActivityDemo extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//先去除应用程序标题栏 注意:一定要在setContentView之前
requestWindowFeature(Window.FEATURE_NO_TITLE);
//将我们定义的窗口设置为默认视图
setContentView(R.layout.float_activity);
}
}
最后一步,更改应用程序配置文件AndroidManifest.xml,将我们刚才创建的样式应用到我们的Activity上,如下所示:
<activity android:name=".FloatActivityDemo" android:theme="@style/Theme.FloatActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
自己试一试吧!
Demo下载地址:http://www.ideasandroid.com/android/demo/FloatActivityDemo.rar

- 大小: 32.9 KB
分享到:
相关推荐
这个“Android自定义弹出框实现(修改版)完整实例源码”就是一个很好的示例,它展示了如何根据自己的需求设计和构建个性化的弹出框。下面将详细介绍这个实例中的关键知识点。 首先,我们要理解Android中的弹出框...
在Android开发中,有时我们需要创建一个弹出式对话框来与用户进行交互,但不同于常见的`Dialog`类,我们可以利用`Activity`来实现这一功能。这种方式适用于需要更复杂交互或者自定义布局的情况。本文将详细讲解如何...
为了使锁屏界面看起来更像系统原生,通常需要自定义Activity的主题。例如,可以将`android:theme`设置为全屏无标题栏,这样可以去除系统的导航栏和状态栏,让锁屏界面更加沉浸。 3. **权限申请** 如果锁屏页面...
总的来说,"Android悬浮Activity ( Dialog风格)"是通过自定义Activity样式和窗口属性来实现的一种交互方式。开发者可以通过这种方式创建轻量级的、易于访问的小部件,提高用户体验。同时,结合`CameraDemo`,我们...
下面我们将深入探讨Android自定义主题的相关知识点。 1. **主题与样式** - **主题(Themes)**:在Android中,主题是一种全局的UI设置,可以影响整个应用程序或特定的Activity。它们定义了控件的颜色、字体、背景...
标题中的“android自定义弹出窗”指的是开发者根据自己的需求创建的一种非标准的对话框或者窗口组件,通常用于显示额外的信息或进行特定的操作。 描述中提到的“自带遮罩层”是一个关键特性,遮罩层(Mask Layer)...
Dialog是Android UI系统中的一个组件,用于在主界面之上显示一个小型窗口,通常用于向用户显示警告、确认信息或者进行简单的操作。Android提供了多种预定义的Dialog样式,如AlertDialog、ProgressDialog等,但这些...
总结:在Android中,我们可以自定义Activity的样式,使其不全屏显示。通过创建新的主题,继承`Theme.Dialog`并覆盖窗口背景,然后在`AndroidManifest.xml`中应用这个主题到特定Activity,可以实现弹出式Activity的...
在Android开发中,自定义全屏Dialog是一种常见的需求,它能提供更为沉浸式的用户体验,使得用户在处理特定任务时能够更加专注。本教程将详细讲解如何实现这样一个功能,旨在帮助开发者提升Android应用的界面设计与...
在Android开发中,自定义Activity的进入和退出动画可以提升用户体验,使应用更加生动有趣。本文将详细介绍如何通过Theme来实现这一目标,涉及到Android的Activity属性设置和资源操作。 首先,我们了解`Theme`和`...
这通常涉及修改主题(Theme)设置,例如使用`<item name="android:windowTranslucentStatus">true</item>`来使状态栏透明,或者使用`fitsSystemWindows="true"`属性使布局适应系统窗口。 在实现自定义标题栏的过程...
创建一个新的Activity作为自定义锁屏界面,需要设置其主题为`Theme.DeviceDefault.NoActionBar`以去除系统标题栏,并确保在系统层级之上显示。通过在`AndroidManifest.xml`中设置`android:showOnTop="true"`和`...
以上就是关于Android自定义对话框的一些关键知识点。通过熟练掌握这些技巧,开发者可以创建出更加美观、易用的对话框,提升用户体验。在实际项目中,可以根据需求灵活运用,打造出满足各种场景的自定义对话框。
在Android开发中,DialogFragment是一种常用的组件,用于展示与用户交互的对话窗口。它继承自Fragment,具有Fragment的所有特性,并且增加了弹出对话框的功能。本篇将详细讲解如何自定义一个全屏的DialogFragment。 ...
当我们谈论“固定大小的activity”时,我们通常指的是如何自定义Activity的窗口大小、位置以及其透明度和显示内容。这样的定制可以用于实现特殊的设计效果或者满足特定的用户界面需求。下面我们将深入探讨这些主题。...
例如,我们可以使用`Theme.Translucent.NoTitleBar`或自定义一个透明主题。在AndroidManifest.xml中的Activity定义如下: ```xml <activity android:name=".YourActivity" android:theme="@android:style/Theme....
总结来说,Android自定义Dialog涉及到的主要知识点包括:设置Activity主题使其呈现Dialog样式、设计自定义布局、控制Dialog的大小和位置,以及处理与用户交互的相关逻辑。通过熟练掌握这些技巧,你可以为用户提供...
Dialog是Android系统提供的一个弹出式窗口,它浮现在当前活动(Activity)之上,用于显示临时信息或进行用户交互。要创建一个自定义等待框,我们需要继承自`AppCompatDialog`或`AlertDialog`类,并重写其内部逻辑。...
在Android开发中,自定义Dialog是一种常见的需求,它允许开发者根据应用的设计风格或者特定功能来创建具有...在学习和实践中,多参考官方文档和社区资源,如CSDN博客,能帮助你更好地掌握Android自定义Dialog的技巧。
Activity是Android应用开发中的核心组件之一,它是用户与应用程序交互的窗口。深入理解Activity,意味着我们需要探讨它的生命周期、启动模式、栈管理、Intent传递、UI更新以及与其他组件(如Service、...