❶ 如何在 android 程序中禁止屏幕旋转和重启Activity
第一种方法:在清单文件的那个Activity标签中添加:android:screenOrientation="portrait"
第二种:在activity的onCreate中加入这些:
if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
} else {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
一般在全项目都需要加的时候,只需要写个Activity的基类,让其他的都继承这个类,然后设置第二种就可以了,不用每个都写
❷ android开发,关于onResultActivity调用系统图库,Activity又被重新onCreate
这是因为转屏时重启了Activity,所以重新调用了一次onCreate。
解决方案:
在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了。
❸ 怎样让android开发程序不随着屏幕转动啊
1.在AndroidManifest.xml的每一个需要禁止转向的Activity配置中加入 android:screenOrientation=”landscape” 属性。 landscape = 横向 portrait = 纵向 2.android中每次屏幕方向切换时都会重启Activity,所以应该在Activity销毁前保存当前活动的。
禁止屏幕随手机旋转变化 有时候我们希望让一个程序的界面始终保持在一个方向,不随手机方向旋转而变化: 在AndroidManifest.xml的每一个需要禁止转向的Activity配置中加入android:screenOrientation=”landscape” 属性。 landscape = 横向 portra。
在manifest文件中加入 screenOrientation=“portrait” 限制屏幕竖屏显示 screenOrientation=“landscape” 限制屏幕横屏显示
使用嵌套布局 相对布局里面嵌套一个线性布局 可以防止出现分辨率混乱 这里我们使用相对布局嵌套一个线性布局可以完成 标题在最上方 最下方是一个ActivityGroup 右边的abcdef。选项条在最右边 这3个都是相对布局里的元素 然后 中间是一个线性布。
LZ可以试试android:screenOrientation="portrait"强制竖屏,然后通过传感器来检测是否旋转了屏幕。LZ可以先尝试一下啊加速度传感器看看,这个应该每个手机都会有
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE););//强制为横屏 或者在AndroidManifest.xml 里面添加android:screenOrientation=”landscape”
Android 平台提供了两类动画,一类是 Tween 动画,即通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果;第二类是 Frame 动画,即顺序播放事先做好的图像,跟电影类似。本文分析 Tween动画的rotate实现旋转效果。
❹ Android activity切换时怎么实现类似ios的翻页效果
通常情况下是用ViewPager+Fragment来实现滑屏的效果。
1.Fragment是android3.0引入的新控件,果应用使用在3.0以下、1.6及以上的版本,需要引入v4包。
2.Fragment支持在不同的Activity中使用并且可以处理自己的输入事件以及生命周期方法等。
3.Fragment的生命周期方法依赖于Activity的生命周期,例如一个Activity的onPause()的生命周期方法被调用的时候这个Activity中的所有的Fragment的onPause()方法也将被调用。
4.FragmentManager提供了对Activity运行时的Fragment的添加、删除、替换的操作。在Activity运行期间可以添加Fragment而不是在XML布局文件中进行定义。如果打算在Activity中改变Fragment的生命过程。如果要执行添加、删除、修改的操作,必须通过FragmentManager的对象获得一个FragmentTransaction对象,通过它的API来执行这些操作。
5.两个单独的Fragment之间是不应该进行通信的。应该使用他们所存在的Activity作为沟通的纽带。
❺ android开发中如何设置主界面,比如我有两个activity,如何选择我想要的最先出现!
在AndroidManifest.xml里修改<activityandroid:name=".CdBusSearchActivity"android:label="@string/app_name"><intent-filter><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.LAUNCHER"/></intent-filter></activity><activityandroid:name=".BusInfoActivity"/>CdBusSearchActivity是主界面,如果想换成BusInfoActivity的话,只需交换两个的名字就行
(5)androidactivity上下切换扩展阅读
如果intent对象包含FLAG_ACTIVITY_CLEAR_TOP 标记,当目标task中已存在与接收该intent对象的 activity类型相同的activity实例存在时,所有位于该activity对象上面的activity将被清空,这样接收该intent的 activity就位于栈顶,可以响应到来的intent对象。
如果目标activity的运行模式为standard(默认),则目标activtiy也会被清空。因为当运行模式为standard时,总会创建新的activity对象来接收到来的intent对象。
参考资料
android开发 网络
❻ 安卓开发的时候在Manifest文件中有一个<intent-filter>里面包含<action>和<category>
Android 会根据 manifest.xml 是启动相应的应用程序。
启用应用程序的时候,会启用对应的Activity,启用的这些Activity也要在manifest.xml中声明。
你说的这个<intent-filter>在声明的时候用到的,是在activity下一级,而<action>和<category>又是在<intent-filter>的下一级
<activity...
<intent-filter>...
<action...
<category...
</intent-filter>
</activity>
<intent-filter> 就理解为过滤器,它指定了启动应用程序的Intent对象的动作和类型
<action android:name="android.intent.action.MAIN" />
--> 表示这个activity是主入口,换句话说, 你只要启动这个应用程序,就要首先调用这个activity
<category android:name="android.intent.category.LAUNCHER" />
--> 表示这个activity种类,要加到LAUNCHER程序列表里。
希望对你有用。