Android
来源:互联网 发布:python count函数 编辑:程序博客网 时间:2024/06/05 15:21
这是很简单的一个Dialog, 先上一张效果图。
实现起来也比较简单,直接上代码吧
MyDialog.class
package com.mythmayor.test;import android.app.Dialog;import android.content.Context;import android.os.Bundle;import android.view.View;import android.widget.TextView;/** * Created by mythmayor on 2017/6/8. */public class MyDialog extends Dialog { private onNoOnclickListener noOnclickListener;//取消按钮被点击了的监听器 private onYesOnclickListener yesOnclickListener;//确定按钮被点击了的监听器 private TextView tvYes; private TextView tvNo; public MyDialog(Context context) { super(context, R.style.style_my_dialog); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.dialog_my); //按空白处不能取消动画 setCanceledOnTouchOutside(true); /** 初始化控件 */ initView(); /** 处理用户输入 */ handleUserInput(); } private void initView() { tvYes = (TextView) findViewById(R.id.tv_yes); tvNo = (TextView) findViewById(R.id.tv_no); } private void handleUserInput() { tvYes.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (yesOnclickListener != null) { yesOnclickListener.onYesClick(); } } }); tvNo.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (noOnclickListener != null) { noOnclickListener.onNoClick(); } } }); } /** * 设置取消按钮的显示内容和监听 * * @param onNoOnclickListener */ public void setNoOnclickListener(onNoOnclickListener onNoOnclickListener) { this.noOnclickListener = onNoOnclickListener; } /** * 设置确定按钮的显示内容和监听 * * @param onYesOnclickListener */ public void setYesOnclickListener(onYesOnclickListener onYesOnclickListener) { this.yesOnclickListener = onYesOnclickListener; } /** * 设置确定按钮和取消被点击的接口 */ public interface onYesOnclickListener { void onYesClick(); } public interface onNoOnclickListener { void onNoClick(); }}
布局文件如下:dialog_my.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:layout_marginLeft="30dp" android:layout_marginRight="30dp" android:orientation="vertical"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/bg_dialog_top" android:padding="10dp" android:text="提示" android:textColor="@color/color_white" android:textSize="14sp" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/color_white" android:paddingLeft="30dp" android:paddingRight="30dp" android:paddingTop="15dp" android:text="欢迎访问我的CSDN博客: \nmythmayor的博客" android:textColor="@color/color_333333" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/color_white" android:paddingBottom="15dp" android:paddingLeft="30dp" android:paddingRight="30dp" android:paddingTop="12dp" android:text="立即关注请点击确认" android:textColor="@color/color_333333" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:id="@+id/tv_no" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:background="@drawable/bg_dialog_bottom1" android:gravity="center" android:padding="12dp" android:text="取消" android:textColor="@color/color_2396F7" /> <View android:layout_width="1dp" android:layout_height="match_parent" android:background="@color/color_white" /> <TextView android:id="@+id/tv_yes" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:background="@drawable/bg_dialog_bottom2" android:gravity="center" android:padding="12dp" android:text="确认" android:textColor="@color/color_2396F7" /> </LinearLayout></LinearLayout>
最后附上源码:
点击进入下载源码界面
阅读全文
0 0
- Android
- android
- Android
- android
- android
- Android
- Android
- android
- android
- android
- Android
- Android
- android!!!
- android
- android
- android
- android
- android:
- cocos2dx 植物大战僵尸 19 读报僵尸
- 编写Android.mk Application.mk文件
- JDBC技术
- IntelliJ IDEA快捷键总结
- javascript代码的小小重构
- Android
- windows需要关闭的大量读写硬盘的服务
- crond与crontab
- 使用VUE在Django中打印“Hello World”
- 纯虚函数访问权限
- JS简易日历
- 算法作业_27(2017.6.8第十六周)
- 地图投影系列浅析(三)_ 地图投影
- MATLAB初探