1.生命周期//使Activity用弹出窗的形式显示
//配置AndroidManifest.xml中的Activity
android:theme="@android:style/Theme.Dialog"
1.Log类
Log.v(String tag,String msg);//VERBOSE
Log.d(String tag,String msg);//DEBUG
Log.i(String tag,String msg);//INFO
Log.w(String tag,String msg);//WARN
Log.e(String tag,String msg);//ERROR
2.Activity生命周期
a)假设有二个Activity,分别名为:OneActivity,TwoActivity
OneActivity的生命周期为:
OnCreate(Bundle saveInstanceState)
onStart();
onResume();
//调用TwoActivity,则执行
onPause();
//如果此时OneActivity不可见,则会执行
onStop();
//如果从TwoActivity返回到OneActivity,则执行
onRestart(),onStart()
//如果此时OneActivity可见,则不执行onStop();
//如果从TwoActivity返回到OneActivity,则执行
onResume();
//退出的时候
onDestory();
2.高级使用:
1.比如,如果正在文件框加输入信息,此时有电话进来的话,接电话时,
Activity会进入不可视的状态,即会调用onStop()方法。
而且,如果此时Android系统资源欠缺的话,就会结束掉Activity.
所以,处理这种情况呢?
方法:
onSaveInstancesState(Bundle outState){
super.onSaveInstancesState(outState);
}
此方法会在onStop() 或 onPause() 之前执行
用来保存一些状态。
保存的信息会存放在Bundle中(Bundle有点类似JAVA中的MAP)
Bundle是Android来安排的,所以,如果Activity被杀掉,此
Bundle还是存在的。
例:
onSaveInstancesState(Bundle outState){
super.onSaveInstancesState(outState);
.....
String text = .........
outState.putString(String name,String value);
}
onCreate(Bundle savedInstanceState){
.........//判断Bundle不为空,且存在值
obj.setText(.....);
..........
}
Theme
2. Android:theme
//Activity弹出窗显示
android:theme="@android:style/Theme.Dialog"
//不显示TitleBar
android:theme="@android:style/Theme.NoTitleBar"
//程序显示满整个屏幕
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
//白色背景
android:theme="Theme.Light"
android:theme="Theme.Light.NoTitleBar"
android:theme="Theme.Light.NoTitleBar.Fullscreen"
//黑色背景
android:theme="Theme.Black"
android:theme="Theme.Black.NoTitleBar"
android:theme="Theme.Black.NoTitleBar.Fullscreen"
//将程序的背景同壁纸是一致的
android:theme="Theme.Wallpaper"
android:theme="Theme.Wallpaper.NoTitleBar"
android:theme="Theme.Wallpaper.NoTitleBar.Fullscreen"
//背景透明度
android:theme="Translucent"
android:theme="Theme.Translucent.NoTitleBar"
android:theme="Theme.Translucent.NoTitleBar.Fullscreen"
//只显示文本框,按钮等
android:theme="Theme.Panel"
android:theme="Theme.Light.Panel"
分享到:
相关推荐
在"Activity_Theme_Style.rar_activity theme_android"这个压缩包中,包含的资源可能是一个关于如何自定义和应用Android Activity主题的教程。 首先,我们来了解一下Android中的主题系统。Android提供了预定义的...
通过自定义Theme,我们可以实现Activity间切换时的动画效果,这不仅可以提升用户体验,也能让应用更具个性化和专业感。本篇将详细介绍如何利用Theme来定制Activity间的切换动画。 首先,理解Android的Theme和Style...
如果希望Activity同时具备普通Activity的功能,我们可以在启动该Activity时添加额外的Intent Flag,比如`FLAG_ACTIVITY_LAUNCH_ADJACENT`,这将允许Activity在后台栈中正常启动,而不会覆盖当前的Activity。...
为了使Activity背景透明,我们需要在对应的Activity标签中添加一个特殊的主题(Theme)。Android系统提供了多种主题供开发者选择,其中包括允许Activity背景透明的选项。例如,我们可以使用`Theme.Translucent....
This Activity already has an action bar supplied by the window decor. Do not request Window.FEATURE_SUPPORT_ACTION_BAR 原因一 错误写法: <style name=AppTheme.NoActionBar> ...
在`res/values/styles.xml`文件中,我们可以定义一个新的主题,例如`Theme.AppCompat.Dialog.Alert`,它会使`Activity`呈现为对话框样式。 ```xml <style name="PopupTheme" parent="Theme.AppCompat.Dialog.Alert...
在Android开发中,实现“背景半透明效果的Activity”是一种常见的需求,它可以为用户界面增添一层优雅而现代的视觉体验。这种效果通常是通过调整Activity的窗口属性和使用自定义主题来实现的。以下将详细解释如何...
这里,`.YourActivity`是你要修改的Activity类名,`Theme.AppCompat.NoActionBar`则是指定了无标题栏的主题。如果你的项目使用的是AndroidX库,应使用`Theme.MaterialComponents.NoActionBar`。 当然,如果你只想在...
在Android开发中,"悬浮Activity"通常指的是一个可以悬浮在其他应用之上,类似Dialog样式但功能更为丰富的Activity。这样的设计可以提供用户一种便捷的方式访问或操作应用,而无需完全退出当前正在使用的应用。悬浮...
方法一: 通过Theme.Translucent ...只需要在Manifest中需要透明的Activity内设置theme为以上任意一个就可以了 <activity android:name=com.vixtel.simulate.MainApp android:configChanges=keyboardHidden|
其次,我们需要在AndroidManifest.xml文件中修改相应Activity的theme。下面是AndroidManifest.xml文件的内容: ```xml <activity android:name=".HomeActivity" android:label="@string/app_name" android:theme=...
它是一种常见的主题,用于创建看起来像是浮现在当前Activity之上的小窗口,即对话框样式。这种主题使得应用的某一部分可以以非侵入性的方式呈现,不占据整个屏幕,通常用于显示警告、设置或其他简短交互。然而,...
要实现Activity的透明效果,我们需要调整Activity的主题(Theme)和窗口(Window)属性。 1. **设置透明主题**: 在AndroidManifest.xml中,为要实现透明效果的Activity指定一个透明主题。可以创建自定义主题,...
这通常通过改变Activity的Theme完成,因为一个Activity只能有一个Theme。可以通过SharedPreferences来保存用户的夜间模式偏好。 ```java SharedPreferences prefs = getSharedPreferences("NightMode", MODE_...
Theme是对整个应用程序或者Activity的全局设定,它会影响到应用中的所有视图或组件。而Style则是对单个视图或者组件的定制,比如一个按钮或文本框的外观。 在Android中,Theme主要定义在res/values/styles.xml文件...
<activity android:theme="@android:style/Theme.Translucent.NoTitleBar"/> ``` 八、FLAG_ACTIVITY_系列标记 在Intent中添加特定标记,可以改变Activity的行为,如FLAG_ACTIVITY_NEW_TASK用于启动新的任务,FLAG_...
本文将详细介绍如何通过Theme来实现这一目标,涉及到Android的Activity属性设置和资源操作。 首先,我们了解`Theme`和`Style`的概念。Theme是全局的主题设定,它可以应用于整个应用程序或者特定的Activity,而Style...
在Android开发中,"activity dialog"通常指的是将一个Activity显示为对话框样式,而不是全屏显示。这种设计模式常用于创建需要用户简单交互的小型窗口,例如设置、提示或者警告等场景,它可以让用户在执行其他操作的...
在`<activity>`标签中添加`android:theme`属性,并指定一个透明的主题。例如,我们可以使用系统提供的`Theme.Translucent.NoTitleBar`主题: ```xml <activity android:name=".TransparentActivity" android:...
theme是针对整个Activity或整个程序的,必须在AndroidManifest.xml中的或<activity>中定义。例如: ```xml android:theme="@style/CustomTheme" /> ``` 或者: ```xml <activity android:theme="@style/Custom...