Có lúc nào bạn vượt buốn chán cùng với phương pháp sự chuyển tiếp giữa giữa các activity không ? Hoặc mong vấn đề chuyển tiếp đó giống như IOS ví dụ điển hình ?Bài viết này bản thân đã trả lời mọi bạn cách "Custom Transition Activity"
2. Custom Transition ActivityCách cần sử dụng bản thân vẫn nói làm việc mục 3Chụ ý :
interpolator : tư tưởng con đường cong gia tốc (ví dụ tuyến tính, tụt giảm, vv).duration : xác minh thời hạn kéo dãn cuả hiệu ứngfromXDelta, fromYDelta, toXDelta, toYDelta vị trí ban đầu cùng kết thúcTạo file xml slide_in_from_right.xml trong thư mục anim
Kết quả
Mình xài 2 file xml có sẵn trong android là game android.R.anim.fade_in với game android.R.anyên.fade_out
fade_in.xml
fade_out.xml
altrộn xmlns:android="http://schemas.game android.com/apk/res/android" android:interpolator="
Bạn đang xem: Hiệu ứng chuyển trang cho android
interpolator/accelerate_quad" android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="Chúng ta đã sử dụng function overridePendingTransition() nhằm biến đổi cảm giác nối tiếp màn hình
Mình chế tạo ra 3 nút cùng với 3 tùy chỉnh thiết lập khác nhau
buttonSlide : Tạo cảm giác như thể IOSbuttonFade : Tạo cảm giác ẩn hiện tại activity mớibuttonDefault : Giữ nguyên ổn cảm giác khoác định của điện thoại cảm ứng thông minh để so sánhCrúc ý : Phải để overridePendingTransition() sau startActivity() nhé
Mình cũng tạo intent để truyền type hiệu ứng chuyến qua màn hình để dịp bachồng về đem hiệu ứng tương ứng
package com.tuananh.transitionactivity;import game android.content.Intent;import game android.os.Bundle;import apk.support.v7.tiện ích.AppCompatActivity;import game android.view.View;public class MainActivity extends AppCompatActivity implements View.OnClickListener
Xem thêm: Ngôi Sao Thời Trang 360Mobi Hack, Hack Game Ngôi Sao Thời Trang 360Mobi Cho Android
Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.button_slide).setOnClickListener(this); findViewById(R.id.button_fade).setOnClickListener(this); findViewById(R.id.button_default).setOnClickListener(this);package com.tuananh.transitionactivity;import apk.os.Bundle;import android.tư vấn.v7.ứng dụng.AppCompatActivity;public class ImageActivity extends AppCompatActivity private int mType;
Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.activity_image); if (getIntent() != null) mType = getIntent().getIntExtra("type", 0);
Override public void onBackPressed() super.onBackPressed(); switch (mType) case 1: overridePendingTransition(R.anim.slide_in_from_left, R.anyên.slide_out_to_right); break; case 2: overridePendingTransition(android.R.anlặng.fade_in, app android.R.anlặng.fade_out); break; default: break; ResourceResource