Dialog样式Activity

主要是实现类似红包的界面。

核心代码:

在values中styles中写入以下代码

<style name="redEnvelopeDialog">
    <!--设置dialog的背景-->
    <item name="android:windowBackground">@android:color/transparent
    </item> <!--设置Dialog的windowFrame框为无-->
    <item name="android:windowFrame">@null</item> <!--设置无标题-->
    <item name="android:windowNoTitle">true</item> <!--是否浮现在activity之上-->
    <item name="android:windowIsFloating">true</item> <!--是否半透明-->
    <item name="android:windowIsTranslucent">true</item> <!--设置窗口内容不覆盖-->
    <item name="android:windowContentOverlay">@null
    </item> <!--设置动画,在这里使用让它继承系统的Animation.Dialog-->
    <item name="android:windowAnimationStyle">@android:style/Animation.Dialog
    </item> <!--背景是否模糊显示-->
    <item name="android:backgroundDimEnabled">true</item>


</style>

再则在AndroidManifest 注册,将样式写入。

<activity
    android:name=".pages.main.conversation.wallet.RedEnvelopeDialogActivity"
    android:theme="@style/redEnvelopeDialog" /><!--红包Dialog-->

public class RedEnvelopeDialogActivity extends Activity implements View.OnClickListener {
    private ImageView mIvOpenRedEnvlop;
    private ImageView mIvColseRed;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_dialog_red_envelope);
        WindowManager windowManager = getWindowManager();
        Display display = windowManager.getDefaultDisplay();
        WindowManager.LayoutParams params = getWindow().getAttributes();
         params.width = (int) (display.getWidth() * 0.8*0.8);
        getWindow().setAttributes(params);
        initView();

    }
    //初始化
    private void initView() {
        ImageView mIvOpenRedEnvlop = (ImageView) findViewById(R.id.iv_open_red_envelope);
        mIvColseRed = (ImageView) findViewById(R.id.iv_close_red_envelope);
        mIvColseRed.setOnClickListener(this);
        mIvOpenRedEnvlop.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //跳转到红包领取界面
                startActivity(new Intent(RedEnvelopeDialogActivity.this,RedEnvelopeDetailsActivity.class));
            }
        });
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.iv_close_red_envelope:
                finish();
                break;
        }
    }
}

Xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/shape_red_envelope_dialog_bg"
    android:orientation="vertical">

    <ImageView
        android:id="@+id/iv_close_red_envelope"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:layout_marginRight="22dp"
        android:layout_marginTop="20dp"
        android:src="@drawable/red_envelope_close" />

    <ImageView
        android:id="@+id/iv_send_red_envelope_ic"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="10dp"
        android:src="@drawable/ic_launcher_wire_dev" />

    <TextView
        android:id="@+id/tv_send_red_envelope_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="10dp"
        android:text="AK47"
        android:textColor="@color/red_envelope_text"
        android:textSize="18sp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="10dp"
        android:text="给你发了一个红包"
        android:textColor="@color/red_envelope_text_a"
        android:textSize="14sp" />

    <TextView
        android:id="@+id/tv_red_envelope_note"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="10dp"
        android:text="恭喜发财,大鸡大利"
        android:textColor="@color/red_envelope_text_b"
        android:textSize="22sp" />

    <ImageView
        android:id="@+id/iv_open_red_envelope"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_gravity="center"
        android:layout_marginTop="20dp"
        android:scaleType="centerCrop"
        android:src="@drawable/open_red_envelope" />

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginBottom="30dp"
        android:layout_marginTop="30dp"
        android:orientation="horizontal">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="比特币("
            android:textColor="@color/red_envelope_text_a"
            android:textSize="16sp" />

        <TextView
            android:id="@+id/tv_red_envelope_tyep"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="BTC"
            android:textColor="@color/red_envelope_text_a"
            android:textSize="16sp" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text=")红包"
            android:textColor="@color/red_envelope_text_a"
            android:textSize="16sp" />


    </LinearLayout>

</LinearLayout>






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值