模仿网易新闻,点击举报按钮,弹出举报对话框

该博客介绍了如何模仿网易新闻,创建一个点击举报按钮后弹出的对话框。通过自定义Dialog,设置相关布局和样式,实现了类似网易新闻的举报功能效果。博主详细列举了实现步骤,包括创建MyCustomDialog、定义布局文件、样式文件、动画文件等,并给出了在Activity中调用的代码示例。
摘要由CSDN通过智能技术生成

想看一下网易的效果吧
这里写图片描述

看起来还不错,那我们现在就模仿一下网易,也实现相同的效果吧

1.创建MyCustomDialog集成Dialog

private Context context;
    private  TextView tv1;
    private  TextView tv2;
    private  TextView tv3;
    private  TextView tv4;
    private  TextView tv5;
//
    public MyCustomDialog(Context context) {
        this(context, R.style.dialog);
        this.context = context;
    }

//有两个参数的构造函数,themeResId可以定制Dialog的样式
    public MyCustomDialog(Context context, int themeResId) {
        super(context, themeResId);
        View contentView = UIUtils.inflate(R.layout.dialog_accuse_complaint);
        tv1 = (TextView) contentView.findViewById(R.id.tv1);
        tv2 = (TextView) contentView.findViewById(R.id.tv2);
        tv3 = (TextView) contentView.findViewById(R.id.tv3);
        tv4 = (TextView) contentView.findViewById(R.id.tv4);
        tv5 = (TextView) contentView.findViewById(R.id.tv5);
        setListener();
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        super.setContentView(contentView);
    }
    /**
     * 设置监听
     */
    private void setListener() {
        tv1.setOnClickListener(this);
        tv2.setOnClickListener(this);
        tv3.setOnClickListener(this);
        tv4.setOnClickListener(this);
        tv5.setOnClickListener(this);
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // 设置为底部显示
        getWindow().setGravity(Gravity.BOTTOM);
        WindowManager m = getWindow().getWindowManager();
        Display d = m.getDefaultDisplay();
        // 设置宽度填充屏幕
        WindowManager.LayoutParams p = getWindow().getAttributes();
        p.width = d.getWidth();
        getWindow().setAttributes(p);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.tv1:

                break;
            case R.id.tv2:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值