自定义的dialog
自定义的dialog 其中包含置顶 删除 和取消
下面的是BaseDialog
package com.free.csdn.view.dialog;
import android.app.Dialog;
import android.content.Context;
/**
*
* @author tangqi
* @data 2015年8月8日下午4:26:32
*/
public class BaseDialog extends Dialog {
public BaseDialog(Context context) {
super(context);
}
public BaseDialog(Context context, int theme) {
super(context, theme);
}
/**
* 监听确定
*/
public abstract interface OnConfirmListener {// 抽象的方法
public abstract void onConfirm(String result);
}
/**
* 监听取消
*/
public abstract interface OnCancleListener {
public abstract void onCancle(String result);
}
/**
* 监听删除
*/
public abstract interface OnDeleteListener {
public abstract void onDelete(String result);
}
/**
* 监听置顶
*/
public abstract interface OnStickListener {
public abstract void onStick(String result);
}
}
下面的是得以继承上面的basedialog
package com.free.csdn.view.dialog;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import com.free.csdn.R;
import com.free.csdn.bean.Blogger;
/**
* 博主相关操作
*
* @author tangqi
* @data 2015年8月8日下午9:54:05
*/
public class BloggerOperationDialog extends BaseDialog implements
android.view.View.OnClickListener {
private OnDeleteListener mOnDeleteListener;
private OnStickListener mOnStickListener;
private Blogger mBlogger;
public BloggerOperationDialog(Context context, Blogger blogger) {
super(context, R.style.Theme_Light_FullScreenDialogAct);//dialog的样式问题
// TODO Auto-generated constructor stub
this.mBlogger = blogger;
setContentView(R.layout.dialog_blogger_operation);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
TextView deleteView = (TextView) findViewById(R.id.tv_delete_blogger);
TextView stickView = (TextView) findViewById(R.id.tv_stick_blogger);
TextView cacleView = (TextView) findViewById(R.id.tv_cacle_operate);
if (mBlogger.getIsTop() == 0) {
stickView.setText("置顶博主");
} else {
stickView.setText("取消置顶");
}
deleteView.setOnClickListener(this);
stickView.setOnClickListener(this);
cacleView.setOnClickListener(this);
}
@Override
public void onClick(View v) {
dismiss();
switch (v.getId()) {
case R.id.tv_delete_blogger:
mOnDeleteListener.onDelete(null);
break;
case R.id.tv_stick_blogger:
mOnStickListener.onStick(null);
break;
case R.id.tv_cacle_operate:
break;
default:
break;
}
}
/*
* 删除
*/
public void setOnDeleteListener(OnDeleteListener onDeleteListener) {
this.mOnDeleteListener = onDeleteListener;
}
/*
* 置顶
*/
public void setOnStickListener(OnStickListener onStickListener) {
this.mOnStickListener = onStickListener;
}
}
dialog的主题
<style name="Theme.Light.FullScreenDialogAct" parent="@style/BaseDialog">
<item name="android:windowBackground">@color/transparent</item>
<item name="android:windowFrame">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:backgroundDimEnabled">true</item>
<item name="android:windowSoftInputMode">adjustPan</item>
</style>
自定义的dialog的更多相关文章
- android中自定义的dialog中的EditText无法弹出输入法解决方案
1.解决无法弹出输入法: 在show()方法调用之前,用dialog.setView(new EditText(context))添加一个空的EditText,由于是自定义的AlertDialog,有 ...
- CustomDialog——一个多功能、通用、可自定义的Dialog
CustomDialog--一个多功能.通用.可自定义的Dialog 依赖 compile 'com.github.SiberiaDante:CustomDialog:v1.0.1' 说明[Cus ...
- 自定义loading dialog --- 后背景透明
自定义loading dialog --- 后背景透明 <style name="loading_dialog" parent="android:style/ ...
- 自定义样式 dialog
自定义样式 dialog,可设置界面外点击屏幕外和返回键 是否消失 基本用法如下: CustomDialog.Builder customBuilder = new CustomDialog.Bui ...
- 自定义android Dialog
1.自定义Dialog: import android.app.AlertDialog; import android.app.Dialog; import android.content.Conte ...
- 关于JFace的自定义对话框(Dialog类)
仅仅是使用MessageDialog,InputDialog等JFace中现成的对话框类是无法满足实际项目开发需要的. 很多时候都需要自己定制对话框,自定义对话框只要在Dialog类的基础上作扩展就行 ...
- Android自定义对话框(Dialog)位置,大小
代码: package angel.devil; import android.app.Activity;import android.app.Dialog;import android.os.Bun ...
- Android 自定义对话框(Dialog)位置,大小
代码: package angel.devil; import android.app.Activity; import android.app.Dialog; import android.os.B ...
- 95秀-自定义对话框 dialog 合集
普通的确认对话框 NormalDialog.java import android.app.Dialog; import android.content.Context; import android ...
随机推荐
- 【服务器防护】WEB防护 - WEBSHELL攻击探测【转载】
原文:http://www.2cto.com/Article/201511/451757.html 1. 什么是webshell? 基于b/s架构的软件部署在Internet上,那么安全性是必 ...
- datagrid实现行的上移和下移
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- 如何判断一个GPS点是否在以另一个GPS点为圆心100米为半径的圆内(Java代码)
题目乍一看,无从下手,仔细想了一下,原来只需要判断两个GPS点的直线距离是否<100米即可. Java代码如下: /** * 将两个经纬度坐标转化成距离(米) * * @param 2个GPS经 ...
- Linux 命令速查
学生信,Linux是最最基本的技能,要尽量将自己的工作平台转移到Linux,编程写脚本,这样会极大的提升工作效率,找工作时也不会太怂.Linux所有的任务都是通过命令来完成的,具有高度的统一性.Lin ...
- OneProxy主从延迟检测
OneProxy具有主从延迟检测功能,检测方式有两种. 1.通过MySQL本身提供的延迟信息,即在从库中执行show slave status; 查看Seconds_Behind_Master值: 2 ...
- MySQL OCP 考试,一个不错的网站
http://www.aiotestking.com/oracle/category/exam-1z0-883-mysql-5-6-database-administrator/page/10/ 里面 ...
- 【转】 Live555
Ⅰ live555简介 Live555 是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP.RTSP.SIP等的支持.Live555实现了对多种音视频编 ...
- saiku-添加数据源以及保证数据源的一致性
采用任何一种添加数据源的方式都不能保证数据源的一致和完整,所以需要两种结合来管理数据源 1.通过saiku的管理台添加数据源 ① 第一种方式:schema和ds都在管理台添加 1)上传schema文件 ...
- HTML5自学笔记[ 17 ]canvas绘图基础4
绘制图像: drawImage(oImg,x,y),oImg是一个Image对象,(x,y)为绘制起点,绘制的图像大小和源图大小一样. drawImage(oImg,x,y,w,h),后两个参数设置绘 ...
- mysql的小知识点(关于数据库的导入导出 对于windows)
对于,一个存在的数据,我们该如何去打包成.sql属性的文件呢? 直接进行这两条语句: D:\Program Files\MySQL\mysql\bin>mysqldump -u root -p ...