activity

如何在 Android 程序中禁止屏幕旋转和重启Activity

喜欢而已 提交于 2020-03-22 10:25:42
禁止屏幕随手机旋转变化 有时候我们希望让一个程序的界面始终保持在一个方向,不随手机方向旋转而变化: 在AndroidManifest.xml的每一个需要禁止转向的Activity配置中加入 android:screenOrientation =”landscape” 属性。 landscape = 横向 portrait = 纵向 避免在转屏时重启Activity android中每次屏幕方向切换时都会重启Activity,所以应该在Activity销毁前保存当前活动的状态,在Activity再次 Create的时候载入配置,那样,进行中的游戏就不会自动重启了! 要避免在转屏时重启Activity,可以通过在AndroidManifest.xml文件中重新定义方向(给每个Activity加上 android:configChanges =”keyboardHidden|orientation” 属性)。 在需要控制屏幕显示方向的Activity中重写 onConfigurationChanged(Configuration newConfig) 方法,这样在转屏时就不会重启Activity了。 if(newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE) { //横向 setContentView(R.layout

Activity 切换动画和页面切换动画

喜夏-厌秋 提交于 2020-03-22 04:33:16
public class MainActivity extends Activity { private ViewFlipper viewFlipper; private float startX; private Animation in_lefttoright; private Animation out_lefttoright; private Animation in_righttoleft; private Animation out_righttoleft; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); in_lefttoright = AnimationUtils.loadAnimation(this, R.anim.enter_lefttoright); out_lefttoright = AnimationUtils.loadAnimation(this, R.anim.out_lefttoright); in_righttoleft = AnimationUtils.loadAnimation(this, R.anim.enter_righttoleft);

activity的android:name所指的Activity实现类的简写问题

霸气de小男生 提交于 2020-03-21 21:48:51
android Activity androidname AndroidManifest.xml配 <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.android.apis"> <activity android:name="ApiDemos"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".app.HelloWorld" android:label="@string/activity_hello_world"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android

Android 命名规范和编码规范

China☆狼群 提交于 2020-03-21 10:12:36
简明概要 多写注释 一、关于命名规范 对于开发项目来说肯定是要有统一的规范,然而命名规范需要做到哪几点呢?     答: 首先, 不能反人类 。 再来就是,要 望文而知其意 。 下面就来说说具体该怎么去规范我们的代码了。How to name?    1) J ava类文件     i. Activity 命名规范: 以Activity作为后缀, 例如 person Activity 。     ii. Adapter 命名规范: 以Adapter作为后缀, 例如 person Adapter 。     iii. Entity 命名规范: 大多以Entity作为后缀, 例如 person Entity 。 值得注意的是,User是全局变量,不算实体,不用这样来命名。   2) 资源文件      ①layout目录下(都用小写好么)     i. 页面布局文件 :           以act_ 为前缀,以Activity所在的Packege作为中缀, 以Activity的名称(去掉Activity)作为后缀。         如: act_ person_ addcoustomer .xml 表示在Person模块下的AddCustomerActivity对应的Layout布局文件。     ii. ListView中的item布局文件 :           以item

(9 Android) 活动组件Activity

梦想与她 提交于 2020-03-21 10:11:36
(9 Android) 活动组件Activity 3.2.1 AppCompatActivity、Activity和Context AppCompatActivity 随着Android开发技术的发展,在不同的阶段(开发环境)创建Activity组件所使用的基类不同。在使用eclipse进行Android开发时,自动创建的MainActivity继承Activity,而Android Studio继承AppCompatActivity。 Activity作为Android最重要的组件之一,用于设计应用程序的用户界面,其内容来源于布局文件。在一个Activity的onCreate()方法里,使用父类的方法setContentView()呈现内容视图,并以布局文件作为参数。Activity包含了响应界面事件的代码,即具有控制器的功能。 Activity作为上下文类的子类 在Java SE中,创建一个类,写个main()方法就能运行。一个类调用另一个类,需要先使用new运算符创建另一个类的实例对象。Android应用使用基于组件的设计模式,组件的运行要有一个完整的Android项目环境,在这个环境下,Activity和Service等系统组件才能够正常工作,而这些组件并不能采用普通的Java对象创建方式(使用new运行创建实例),而是要有它们各自的上下文环境

(10 Android)实验项目_Android UI与Activity组件(上)

倖福魔咒の 提交于 2020-03-21 10:11:24
(10 Android)实验项目_Android UI与Activity组件(上) 一、实验目的 (1) 掌握常用的布局方法。 (2) 掌握Activity组件的生命周期。 二、实验内容及步骤 在Android Studio中,新建名为Example3的项目,然后在此项目中完成如下几个模块的设计: 1.掌握各种布局的特点、Android常用控件的使用 (1) 在项目里,新建名为example3_1的模块。 (2) 在默认的约束布局里,添加垂直线性布局并内嵌水平线性布局,然后依次添加文本框、下拉列表、单选按钮组和复选框等控件。 (3) 部署模块并做运行测试。 (4) 在文件夹res/layout 里新建一个布局文件,指定根标签为FrameLayout (帧布局)。在Design模式下,向该布局依次添加两个控件,查验后添加的控件对象会在前一控件对象上进行覆盖而形成遮挡。 2. 掌握Activity组件的生命周期 (1) 在项目里,新建名为example3_2的模块,在MainActivity程序的onCreate()方法里,使用Log.i()语句,打印一条Log信息。 (2) 在onCreate()方法体外的空白处,按【Ctrl+O】组合键,选择onRestart(),在该方法里也使用Log.i()语句打印一条Log信息,其Tag名与onCreate()方法里Log.i(

fragment

谁说胖子不能爱 提交于 2020-03-21 05:48:17
Fragment在应用当中应当是一个模块化和可重用的组件,因为Fragment定义了他自己的布局,以及通过使用他自己的生命周期回调方法定义了他自己的行为,可以将Fragment包含到多个Activity中。fragment用在大屏幕平板电脑,可以让两个activity显示在平板,如果是手机上,手机屏幕没有那么大,就会自动变为两个屏幕取显示。支持更灵活的布局,可以作为activity的一部分,也可以独立,可以和activity之间进行交互。 静态加载 在Activity的layout文件中声明Fragment,需要注意<fragment>中的Android:name属性指定了在layout实例化的fragment类 标识fragment方法两种 1 android:id属性提供一个唯一的ID 2 android:tag 属性提供唯一字符串 动态加载 撰写代码将fragment添加到 activity 的layout中,在add()方法添加一个fragment( 传递一个要添加的fragment 和插入view) 提交给activity的每一个变化称作一个事务。 根据用户的交互情况, 处理fragment事务。 包括对fragment 添加移除 替换以及执行其他动作。 每一个事务都是同时执行一套变化,可以在一个事务中设置要执行的变化 (add(),remove(),replace)

Android应用程序组件介绍

廉价感情. 提交于 2020-03-19 19:01:02
应用程序组件是 Android 应用程序的基本构建单元。每个组件是系统进入你的应用程序的不同入口点。不是所有的组件对于用户都是实际上的入口点,有些是互相依赖的,但是每个组件都有特定的作用——每个都是唯一的构建单元,这些构建单元定义你应用程序的全部行为 有四种不同类型的应用程序组件。每种都有不同的用处并且有不同的生命周期。生命周期定义了他们是怎样被创建和销毁的。 四类不同的应用程序组件分别有: Activities 一个 Activity 代表一个单独的拥有用户界面的屏幕。比如,一个邮件应用程序可能拥有一个显示新邮件的列表的 Activity ,一个编写邮件的 Activity ,一个读邮件的 Activity 。虽然这些 Activity 一起工作,但是他们是相互独立的。因此一个不同的应用程序也可以启动这些 Activity 中的任何一个(如果邮件应用程序允许的话)。比如一个摄像头应用程序为了能让用户分享一张图片它能启动邮件应用程序中的编写邮件的 Activity 。 一个 Activity 是由 Activity 类的子类来实现的。 Services 一个 Service 组件是运行在后台的一个进程,这个进程处理一个长时间的操作或者是一个远程调用。一个 Service 不需要提供一个用户界面。比如,一个 Service 可以在用户运行一个不同程序的同时在后台播放音乐

android.intent.action.MAIN 与 android.intent.category.LAUNCHER 的验证理解

邮差的信 提交于 2020-03-18 23:55:31
第一种情况:有MAIN,无LAUNCHER,程序列表中无图标 原因:android.intent.category.LAUNCHER决定应用程序是否显示在程序列表里 第二种情况:无MAIN,有LAUNCHER,程序列表中无图标 原因:android.intent.action.MAIN决定应用程序最先启动的Activity,如果没有Main,则不知启动哪个Activity,故也不会有图标出现 console里面两种情况显示一样: 下面看一个应用程序可以有两个Activity的情况 点击( 此处)折叠或打开 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.studio.android" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="10" /> <application android:icon="@drawable/ic_launcher" > <activity android:name=". Lift_cycles 01" android:label="

跨进程通信之Activity篇

半城伤御伤魂 提交于 2020-03-18 17:01:56
某厂面试归来,发现自己落伍了!>>> 方法一:使用ComponentName实现跨进程 ComponentName componentName=new ComponentName("com.example.vvgool","com.example.vvgool.MainActivity"); intent.setComponent(componentName); startActivity(intent); 需要注意的是:在调用启动activity的时候这样不修改所调用的应用是没问题的,但是如果调用应用的非启动activity问题就来了,错误提示:需要权限,所以说在调用应用为非启动activity的时候需要在androidManifest.xml中所在声明activity中加入android:exported="true"这样就可以了。 方法二:指定Action实现跨进程 修改androidManifest.xml ,在需要调用activity中加入 <intent-filter> <action android:name="main"></action> <category android:name="android.intent.category.DEFAULT"></category> </intent-filter> 这里action 中的name你就自己写吧。。 调用代码