日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

android程序启动动画,Android设置软件启动动画(以及初次安装的几张引导图)

發布時間:2023/12/15 Android 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android程序启动动画,Android设置软件启动动画(以及初次安装的几张引导图) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Android設置軟件啟動動畫(以及初次安裝的幾張引導圖)

設置軟件啟動動畫

1 創建一個啟動Activity 這里叫做QiDongActivity

它的XML中設置一個matchparent的背景圖

2 在Manifest.xml文件中:

3 在java文件中 設置延時

private final int DISPLAY_LENGHT = 1000; //延遲1秒

//用子線程做延時操作再跳轉到你要的主界面

new Handler().postDelayed(new Runnable(){

@Override

public void run() {

Intent mainIntent = new Intent(QiDongActivity.this,LoginActivity.class);

QiDongActivity.this.startActivity(mainIntent);

QiDongActivity.this.finish();

}

},DISPLAY_LENGHT);//延時1秒

設置初次下載時的軟件使用提示

在啟動Activity中,setContentView之前,通過SharedPreference來進行

public class QiDongActivity extends AppCompatActivity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

// 先判斷是否為第一次安裝啟動軟件

SharedPreferences firstShared = getSharedPreferences("isFristDownLoad", MODE_PRIVATE);

boolean isFirst = firstShared.getBoolean("isFristDownLoad", true); // 當不存在 即首啟動時 則設置為true

SharedPreferences.Editor editor = firstShared.edit();

if (isFirst) {

Intent intent = new Intent(QiDongActivity.this, GuideActivity.class);

startActivity(intent);

finish();

editor.putBoolean("isFristDownLoad", false);

editor.apply();

} else {

setContentView(R.layout.activity_qi_dong);

StatusBarUtil.setTransparent(QiDongActivity.this);

//申請權限

getPhoneState();

}

}

啟動界面:

public class GuideActivity extends AppCompatActivity{

// 引導頁圖片資源

private static final int[] pics = { R.layout.guide_pic1, R.layout.guide_pic2};

private ImageView imageView0,imageView1;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

StatusBarUtil.setTransparent(GuideActivity.this);

setContentView(R.layout.activity_guide);

ViewPager viewPager = findViewById(R.id.view_pager);

imageView0 = findViewById(R.id.imageview0);

imageView1 = findViewById(R.id.imageview1);

imageView0.setImageResource(R.drawable.guide_white_circle);

imageView1.setImageResource(R.drawable.guide_transparent_circle);

List views = new ArrayList<>();

// 初始化引導頁視圖列表

for (int i = 0; i < pics.length; i++) {

View view = LayoutInflater.from(this).inflate(pics[i], null);

if (i == pics.length - 1) {

Button startBtn = view.findViewById(R.id.btn_enter);

startBtn.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

Intent intent = new Intent(GuideActivity.this, QiDongActivity.class);

startActivity(intent);

}

});

}

views.add(view);

}

GuideViewPagerAdapter adapter = new GuideViewPagerAdapter(views);

viewPager.setAdapter(adapter);

viewPager.addOnPageChangeListener(new PageChangeListener());

}

private class PageChangeListener implements ViewPager.OnPageChangeListener {

@Override

public void onPageScrollStateChanged(int position) {

}

@Override

public void onPageScrolled(int position, float arg1, int arg2) {

}

@Override

public void onPageSelected(int position) {

if(position == 0){

imageView0.setImageResource(R.drawable.guide_white_circle);

imageView1.setImageResource(R.drawable.guide_transparent_circle);

}else {

imageView1.setImageResource(R.drawable.guide_white_circle);

imageView0.setImageResource(R.drawable.guide_transparent_circle);

}

}

}

@Override

protected void onResume() {

super.onResume();

}

@Override

protected void onPause() {

super.onPause();

finish();

}

@Override

protected void onStop() {

super.onStop();

}

@Override

protected void onDestroy() {

super.onDestroy();

}

}

GuideAdapter

public class GuideViewPagerAdapter extends PagerAdapter {

private List mListViews;

public GuideViewPagerAdapter(List mListViews) {

this.mListViews = mListViews;

}

//直接繼承PagerAdapter,至少必須重寫下面的四個方法,否則會報錯

@Override

public void destroyItem(ViewGroup container, int position, Object object) {

container.removeView(mListViews.get(position));//刪除頁卡

}

@Override

public Object instantiateItem(ViewGroup container, int position){

//這個方法用來實例化頁卡

container.addView(mListViews.get(position), 0);//添加頁卡

return mListViews.get(position);

}

@Override

public int getCount() {

return mListViews.size();//返回頁卡的數量

}

@Override

public boolean isViewFromObject(View arg0, Object arg1) {

return arg0==arg1;//官方提示這樣寫

}

}

activity_guide.xml

android:layout_width="match_parent"

android:layout_height="match_parent"

/>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:orientation="horizontal"

android:layout_alignParentBottom="true"

android:layout_marginBottom="5dp"

android:layout_centerHorizontal="true"

>

android:layout_width="10dp"

android:layout_height="10dp"

/>

android:layout_width="10dp"

android:layout_height="10dp"

android:layout_marginLeft="2dp"

android:layout_marginStart="2dp" />

選中的點和未選中的點樣式:

android:topRightRadius="5dp"

android:bottomRightRadius="5dp"

android:bottomLeftRadius="5dp"/>

android:topRightRadius="5dp"

android:bottomRightRadius="5dp"

android:bottomLeftRadius="5dp"/>

guide_pic1 和 guide_pic2

android:layout_width="match_parent" android:layout_height="match_parent">

android:layout_width="match_parent"

android:layout_height="match_parent"

android:src="@mipmap/guide_01"

android:scaleType="fitXY"

/>

問題:

一、明明設置了高度和寬度都matchparent 但是還是不能覆蓋全屏

解決:

1 可能是你的圖片本身大小不夠 所以即使控件matchparent 但是 圖片卻只有這么大 所以改圖片大小

2 圖片夠大,還是不能覆蓋。將 ImageView加一個屬性

android:scaleType="fitXY"

就可以了

總結

以上是生活随笔為你收集整理的android程序启动动画,Android设置软件启动动画(以及初次安装的几张引导图)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。