1. 程式人生 > >Android開發之閃屏實現

Android開發之閃屏實現

案例描述:由淺入深的顯示一張logo圖片,顯示3秒鐘後跳轉到登入頁面。

準備的素材:一張logo圖片,一張按鈕背景圖片

logo佈局檔案logo.xml如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center"
    android:orientation="vertical" >

    <ImageView
        android:id="@+id/logo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/splash" />

</LinearLayout>

LogoActivity程式碼如下:

public class LogoActivity extends Activity {

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		// 取消標題
		this.requestWindowFeature(Window.FEATURE_NO_TITLE);
		// 取消狀態列
		this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
				WindowManager.LayoutParams.FLAG_FULLSCREEN);
		setContentView(R.layout.logo);
		ImageView logoImage = (ImageView) this.findViewById(R.id.logo);
		AlphaAnimation alphaAnimation = new AlphaAnimation(0.1f, 1.0f);
		alphaAnimation.setDuration(3000);
		logoImage.startAnimation(alphaAnimation);
		alphaAnimation.setAnimationListener(new AnimationListener() {

			@Override
			public void onAnimationStart(Animation animation) {

			}

			@Override
			public void onAnimationRepeat(Animation animation) {

			}

			@Override
			public void onAnimationEnd(Animation animation) {
				Intent intent = new Intent();
				intent.setClass(LogoActivity.this, LoginActivity.class);
				startActivity(intent);
				finish();
			}
		});
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		getMenuInflater().inflate(R.menu.logo, menu);
		return true;
	}

}

login佈局檔案login.xml如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="10dip"
        android:text="賬號"
        android:textSize="16dip" />
    <AutoCompleteTextView
        android:id="@+id/user"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dip"
        android:completionThreshold="1"
        android:inputType="textEmailAddress"
        android:singleLine="true" />
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="10dip"
        android:text="密碼"
        android:textSize="16dip" />
    <EditText
        android:id="@+id/password"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dip"
        android:password="true"
        android:singleLine="true" />
    <Button
        android:id="@+id/loginButton"
        android:layout_width="180dip"
        android:layout_height="50dip"
        android:layout_gravity="center_horizontal"
        android:background="@drawable/regist_weibo_n"
        android:divider="@drawable/divider_horizontal_timeline"
        android:dividerHeight="2.0dip"
        android:text="登陸" />
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:drawableTop="@drawable/switchuser_divider"
        android:paddingLeft="10dip"
        android:text="微博廣場"
        android:textColor="#7b797b"
        android:textSize="16dip" />
</LinearLayout>
 

LoginActivity程式碼如下:

public class LoginActivity extends Activity {
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.login);
	}
}

AndroidManifest.xml檔案程式碼如下:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.bzu.tuiweibotest"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="15" />

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".ui.LogoActivity"
            android:label="@string/title_activity_logo" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".ui.LoginActivity" >
        </activity>
    </application>

</manifest>