1. XML Layouts
首先在目录 “res/layout/” 下创建两个XML layout文件 :
res/layout/activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world"
android:id="@+id/text_view"/>
</RelativeLayout>
res/layout/activity_other.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="@string/second_page"/>
</LinearLayout>
2. Activities
创建两个activity类
MainActivity.java –> activity_main.xml
OtherActivity.java –> activity_other.xml
切换关键代码
Intent intent = new Intent(MainActivity.this, OtherActivity.class);
startActivity(intent);
MainActivity.java
package com.lance.changescreen;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends Activity {
private TextView mTextView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTextView = (TextView)findViewById(R.id.text_view);
addTextViewListener();
}
/**
* 点击mTextView, 切换到另外一个屏幕
*/
private void addTextViewListener() {
mTextView.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, OtherActivity.class);
startActivity(intent);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
OtherActivity.java
package com.lance.changescreen;
import android.app.Activity;
import android.os.Bundle;
public class OtherActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_other);
}
}
3. AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.lance.changescreen"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.lance.changescreen.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- add OtherActivity-->
<activity android:label="@string/app_name"
android:name="com.lance.changescreen.OtherActivity"/>
</application>
</manifest>
分享到:
相关推荐
在Android应用开发中,滑动切屏是一种常见的交互方式,让用户能够通过左右滑动来切换不同的页面或内容。`ViewPager`组件是Google提供的一个强大的工具,用于实现这种效果。本篇将详细介绍`ViewPager`在Android 1.6及...
Activity切屏动画不仅可以使得应用在视觉上更具吸引力,还能帮助用户理解应用的操作流程。本资源包含11种不同的Activity切屏特效源代码,每一种都经过了亲测,确保能够正常运行,为你的应用增添炫酷效果。 1. **...
实现的效果就是两个activity进行切换时候的动画,其实了解的话其实都非常简单,最近MIUI更新版本之后,现在MIUI的启动界面也采用了有底部向上部平移的动画。其中用到了ButterKnife注解,代码跟全部手写要简洁一些。 ...
如果在AndroidManifest.xml中为Activity指定`android:configChanges="orientation"`,那么当屏幕方向改变时,系统不会默认销毁并重建Activity,而是调用`onConfigurationChanged(Configuration newConfig)`方法,让...
在Android应用开发中,`Activity`是用户界面的基本单元,它负责展示屏幕上的内容和处理用户的交互事件。当我们提到“切屏”时,通常是指用户在不同应用或应用的不同`Activity`之间切换。而“切屏之后需要退出两次的...
- 如果Activity当前正在处理一个屏幕方向改变事件,那么调用该方法可能不会立即生效。 - 如果Activity配置了不允许改变方向(如在`AndroidManifest.xml`中设置了固定方向),则该方法将不起作用。 #### 二、按钮...
在Android中,可以使用`Activity`的`overridePendingTransition`方法或者`FragmentTransaction`的`setCustomAnimation`来添加动画效果。 描述中提到的“NULL”可能是因为原始信息丢失,但我们可以推测这篇博客文章...
在Android开发领域,面试中经常涉及的关键知识点涵盖了Activity的方方面面。Activity是Android四大组件之一,它是用户界面的主要载体,用于展示交互式屏幕。一个Activity通常对应一个用户界面,通过`setContentView...
Activity 是 Android 四大组件之一,负责处理用户交互事件,通常一个用户交互界面对应一个 Activity。Activity 是 Context 的子类,实现了 window.callback 和 keyevent.callback,可以处理与窗体用户交互的事件。 ...
4. **横竖屏切换**:未指定`android:configChanges`时,切屏会导致Activity销毁并重新创建。如果指定`android:configChanges="orientation|keyboardHidden"`,则会调用onConfigurationChanged(),避免重新创建...
guolin的fragmentdemo, 修改了切屏时重叠问题, AndroidManifest <activity加入 android:configChanges="keyboardHidden|orientation|screenSize" 即可
- **未设置配置更改**:切屏会重新调用Activity的生命周期方法,即首先销毁当前Activity,然后重新创建。 - **设置了配置更改**:通过在AndroidManifest.xml文件中为Activity设置`android:configChanges=...
若不指定`android:configChanges`,切屏会导致Activity重建。若设置`android:configChanges="orientation|keyboardHidden"`,则只会调用onConfigurationChanged(),避免了Activity的重新创建。对于游戏开发,通常会...
横竖屏切换时,Activity的生命周期处理取决于清单文件中android:configChanges的设置。如果不设置,切屏会导致Activity销毁并重新创建;如果设置为"orientation|keyboardHidden",则只会调用onConfigurationChanged...
- 若未指定`android:configChanges`,切屏会导致Activity重新创建和销毁。 - 当设置`android:configChanges="orientation|keyboardHidden"`,切屏时只会执行`onConfigurationChanged()`,避免重新创建Activity。 ...
**Activity**是Android四大组件之一,负责处理用户交互并展示UI界面。一个Activity通常对应一个屏幕的用户界面,通过`setContentView()`方法设置其要显示的布局。作为`Context`的子类,它还实现了`Window.Callback`...
- 不指定`android:configChanges`时,切屏会重新创建Activity。 - 设置`android:configChanges="orientation"`时,切屏只调用`onConfigurationChanged()`。 - 设置`android:configChanges="orientation|...
要将Activity设置为窗口样式,可以在AndroidManifest.xml中为该Activity指定自定义样式,例如`android:theme="@style/FloatActivity"`,在资源文件中定义相应风格。 6. **Activity状态保存与恢复** 当后台Activity...