Android實(shí)現(xiàn)閃屏頁(yè)效果
本文實(shí)例為大家分享了Android實(shí)現(xiàn)閃屏頁(yè)效果的具體代碼,供大家參考,具體內(nèi)容如下
1.效果圖
2.閃屏頁(yè)邏輯及布局
2.1 activity_splash.xml
<?xml version='1.0' encoding='utf-8'?><FrameLayout xmlns:android='http://schemas.android.com/apk/res/android' xmlns:app='http://schemas.android.com/apk/res-auto' xmlns:tools='http://schemas.android.com/tools' android:layout_width='match_parent' android:layout_height='match_parent'> <ImageView android:layout_width='match_parent' android:layout_height='match_parent' android:src='http://www.gepszalag.com/bcjs/@drawable/splash' android:scaleType='centerCrop'/> <Button android: android:layout_width='45dp' android:layout_height='32dp' android:text='跳過(guò)' android:textStyle='bold' android:textColor='#fff' android:background='#30000000' android:layout_gravity='right' android:layout_marginTop='30dp' android:layout_marginRight='30dp'/></FrameLayout>
2.2 SplashActivity.java
通過(guò)Handler實(shí)現(xiàn)
public class SplashActivity extends AppCompatActivity { //跳過(guò)按鈕 private Button btnSkip; private Handler handler = new Handler(); private Runnable runnableToLogin = new Runnable() { @Override public void run() { toLoginActivity(); } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_splash); initView(); initEvent(); //延遲4秒 handler.postDelayed(runnableToLogin,4000); } //初始化組件 public void initView(){ btnSkip = findViewById(R.id.splash_btn_skip); } //監(jiān)聽(tīng)事件 public void initEvent(){ btnSkip.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //防止LoginActivity被打開(kāi)兩次 handler.removeCallbacks(runnableToLogin); toLoginActivity(); } }); } /** * 跳轉(zhuǎn)到登錄界面 */ private void toLoginActivity(){ Intent intent = new Intent(this,LoginActivity.class); startActivity(intent); finish(); } @Override protected void onDestroy() { super.onDestroy(); //防止內(nèi)存泄漏 handler.removeCallbacks(runnableToLogin); }}
3.設(shè)置主題樣式
3.1 style.xml中
<resources> <!-- Base application theme. --> <style name='AppTheme' parent='Theme.AppCompat.Light.NoActionBar'> <!-- Customize your theme here. --> <item name='colorPrimary'>@color/colorPrimary</item> <item name='colorPrimaryDark'>@color/colorPrimaryDark</item> <item name='colorAccent'>@color/colorAccent</item> </style> <style name='AppTheme_FullScreen' parent='AppTheme'> <item name='android:windowFullscreen'>true</item> </style></resources>
3.2 AndroidManifest.xml中
<?xml version='1.0' encoding='utf-8'?><manifest xmlns:android='http://schemas.android.com/apk/res/android' package='com.example.myrestaurant'> <uses-permission android:name='android.permission.INTERNET' /> <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='.LoginActivity'></activity> <activity android:name='.SplashActivity' android:theme='@style/AppTheme_FullScreen'> <intent-filter> <action android:name='android.intent.action.MAIN' /> <category android:name='android.intent.category.LAUNCHER' /> </intent-filter> </activity> </application> </manifest>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. asp(vbs)Rs.Open和Conn.Execute的詳解和區(qū)別及&H0001的說(shuō)明2. CSS hack用法案例詳解3. ASP 處理JSON數(shù)據(jù)的實(shí)現(xiàn)代碼4. PHP設(shè)計(jì)模式中工廠模式深入詳解5. 用css截取字符的幾種方法詳解(css排版隱藏溢出文本)6. asp中response.write("中文")或者js中文亂碼問(wèn)題7. ASP.NET MVC遍歷驗(yàn)證ModelState的錯(cuò)誤信息8. ThinkPHP5實(shí)現(xiàn)JWT Token認(rèn)證的過(guò)程(親測(cè)可用)9. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向10. .Net Core和RabbitMQ限制循環(huán)消費(fèi)的方法
