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()冲突

    使用时带上全路径

  • 相关阅读:
    第十五篇: Ajax Control Toolkit 控件包3. DragPanel (拖动效果)
    希望找人一起写个 Ajax 的封装
    第三篇: Silverlight 2.0 下载与安装
    ASP.NET AJAX 1.0 英文文档,视频教程
    第十四篇: 建立 AJAX 母版页 (为了后面例子方便)
    第十三篇: Ajax Control Toolkit 控件包2. CollapsiblePanel (展开和折叠效果)
    几种流行的JS框架的选择
    第二篇: Silverlight 下载与安装
    (原创)WINCE流驱动的动态加载调试
    SQL语法,SQL语句大全,SQL基础(转载)
  • 原文地址:https://www.cnblogs.com/xingyyy/p/4278942.html
Copyright © 2011-2022 走看看