Android 透明Activity -- 透明背景然后页面元素用TranslateAnimation从屏幕上面滑下

透明Activity、动画


此demo我是在横屏下做的,关于创建横屏应用,详见:
https://blog.csdn.net/chaseDreamer_/article/details/104031740

1、首先正常创建一个Activity,在此Activity的标签下配置:

 android:theme="@android:style/Theme.Translucent.NoTitleBar"

2、下面贴出布局文件的代码:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:ignore="MissingDefaultResource">
    
	<!-- activity的透明背景-->
    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:alpha="0.6"
        android:background="#000"></FrameLayout>
        
<!-- 中间展示的布局内容-->
    <LinearLayout
        android:id="@+id/addScript_bg"
        android:layout_width="432dp"
        android:layout_height="match_parent"
        android:layout_gravity="center_horizontal"
        android:background="#fff"
        android:orientation="vertical">

        <Button
            android:id="@+id/btn_hahhah"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="哈哈"/>

    </LinearLayout>

</FrameLayout>

3、在自己创建的activity里,添加动画:

  private TranslateAnimation animation;
  private void initAnim(){
        animation = new TranslateAnimation(0, 0, -1000, 0);
        animation.setDuration(500);
        animation.setFillAfter(true);
        //想让那个View或者ViewGroup从屏幕中间滑下
        viewGroup.startAnimation(animation);
    }

4、在自己创建的Activity里从写finish()方法,然后在里面配置取消退场动画的语句:

@Override
    public void finish() {
        super.finish();
        //取消退场动画
        overridePendingTransition(0, 0);
    }

5、这个Activity还正常启动,但是在startActivity下面添加:

overridePendingTransition(0, 0);

这句话是为了取消Activity进场动画

我是入梦,谢谢你的观看我的博客,如果有什么错误,或者需要demo源码,请随时联系我,QQ:897589417

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值