zoukankan      html  css  js  c++  java
  • 点击头像显示大图Dialog

    1、实现效果

    点击头像 弹出全屏dialog,长按图片弹出“保存图片对话框”,短按dialog消失。

    package com.example.widget;
    
    import android.app.Dialog;
    import android.content.Context;
    import android.graphics.Bitmap;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnLongClickListener;
    import android.widget.ImageView;
    
    import com.kuangren.real.R;
    import com.will.ui.view.ChatDialog;
    
    public class HeadDialog extends Dialog {
    
        private ImageView imageView;
        Context context;
        private Bitmap bitmap;
    
        public HeadDialog(Context context) {
            super(context);
            // TODO Auto-generated constructor stub
            this.context = context;
        }
    
        public HeadDialog(Context context, int theme) {
            super(context, theme);
            this.context = context;
        }
    
        private ChatDialog alertDialog;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            // TODO Auto-generated method stub
            super.onCreate(savedInstanceState);
            this.setContentView(R.layout.head_dialog);
            imageView = (ImageView) findViewById(R.id.dialog_head);
            if(bitmap!=null){
                imageView.setImageBitmap(bitmap);
            }
            // 这里要写全,
            imageView.setOnClickListener(new android.view.View.OnClickListener() {
    
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    HeadDialog.this.dismiss();
                }
            });
            imageView.setOnLongClickListener(new OnLongClickListener() {
    
                @Override
                public boolean onLongClick(View arg0) {
                    // TODO Auto-generated method stub
    
                    alertDialog.show();
    
                    return false;
                }
            });
        }
    
        public ImageView getImageView() {
            return imageView;
        }
    
        public ChatDialog getAlertDialog() {
            return alertDialog;
        }
    
        public void setAlertDialog(ChatDialog alertDialog) {
            this.alertDialog = alertDialog;
        }
    
        public Bitmap getBitmap() {
            return bitmap;
        }
    
        public HeadDialog setBitmap(Bitmap bitmap) {
            this.bitmap = bitmap;
            return this;
        }
    
    }

    调用

    HeadDialog dialog =new 
    dialog.setAlertDialog(alertDialog);
    dialog.setBitmap(bitmap).show();

    注意:

    android.view.View.OnClickListener与content.DialogInterface.OnClickListener()冲突

    使用时带上全路径

  • 相关阅读:
    MongoDB初期学习
    springboot+camunda实现工作流1
    一文带你深入理解位运算
    【林超所长】学科01:熵与热力学重要模型
    PM常用的讨论社区及牛人帖子
    C# 2.0 的特性 总结
    小脚本解决生活问题
    Domain Adaption 之 TCA等算法
    强化学习ddpg算法
    bindkey用法
  • 原文地址:https://www.cnblogs.com/xingyyy/p/4278942.html
Copyright © 2011-2022 走看看