閃屏頁面是指APP剛啟動時的頁面會自動跳轉到主頁面
單單實現閃屏頁面非常簡單。
閃屏界面的作用:
1.展示自己軟體的logo,口號標識語等
關注一下專欄Android高級開發架構(記得看專欄簡介哦~)每天更新各種技術乾貨、進階架構知識、面試經驗分享。
SplashActivity
package com.hxh.splashactivitydemo;
import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.Window; import android.view.animation.AlphaAnimation; import android.view.animation.Animation; import android.widget.RelativeLayout; public class SplashActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 設置沒有標題欄 this.requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_splash); RelativeLayout layoutSplash=(RelativeLayout) findViewById(R.id.activity_splash); AlphaAnimation alphaAnimation=new AlphaAnimation(0.1f,1.0f); alphaAnimation.setDuration(1000);//設置動畫播放時長1000毫秒(1秒) layoutSplash.startAnimation(alphaAnimation); //設置動畫監聽 alphaAnimation.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) { } //動畫結束 @Override public void onAnimationEnd(Animation animation) { //頁面的跳轉 Intent intent=new Intent(SplashActivity.this,MainActivity.class); startActivity(intent); } @Override public void onAnimationRepeat(Animation animation) { } });
} }
MainActivity
import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v7.app.AppCompatActivity; import android.view.Window;
/** * Created by HuXiaoHui on 2017/10/9. */
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); //去掉標題欄 this.requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); } }
activity_splash.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_splash" android:layout_width_="match_parent" android:layout_height="match_parent" android:background="@drawable/splash_background" tools:context="com.hxh.splashactivitydemo.SplashActivity">
<TextView android:id="@+id/text" android:layout_width_="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_marginTop="150dp" android:text="SplashDemo" android:textSize="50dp" android:textColor="#fff" /> </RelativeLayout>
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width_="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/text" android:layout_width_="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_marginTop="100dp" android:text="歡迎進入主界面" android:textSize="30dp" android:textColor="#f00" /> </RelativeLayout>
AndroidManifest.xml
<application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".SplashActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".MainActivity" > </activity> </application>
首先在AndroidManifest.xml中註冊新加入的SplashActivity。
上述只是眾多Android開發知識點的一部分,小編針對BATJM等一線大廠的面試題做了一些整理,還針對Android開發的同行,給大家整理了一些進階資料,其中分享內容包括但不限於【高級UI、性能優化、移動架構師、NDK、混合式開發(ReactNative+Weex)微信小程序、Flutter等全方面的Android進階實踐技術】希望能幫助大家學習提升進階,也節省大家在網上搜索資料的時間來學習,也是可以分享給身邊好友一起學習的!
學習提升進階直通車:有任何問題,歡迎你來一起交流,互相學習
轉發+點贊,關注一下專欄Android高級開發架構(記得看專欄簡介哦~)每天更新各種技術乾貨、進階架構知識、面試經驗分享。
Android架構師之路很漫長,一起共勉吧!