自定义Dialog
来源:互联网 发布:电竞椅推荐 知乎 编辑:程序博客网 时间:2024/05/29 18:55
很多时候,我们在使用android sdk提供的alerdialog的时候,会因为你的系统的不同而产生不同的效果,这里简单的介绍自定义弹出框的应用。
首先是自定义的dialog布局,这里我接不写了,做自己需要的布局
其次创建Dialog类继承Dialog:
import android.app.Dialog;import android.content.Context;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;/*** 自定义dialog* @author Mr.Xu**/public class MyCustomDialog extends Dialog { //定义回调事件,用于dialog的点击事件 public interface OnCustomDialogListener{ public void back(String name); } private String name; private OnCustomDialogListener customDialogListener; EditText etName; public MyCustomDialog(Context context,String name,OnCustomDialogListener customDialogListener) { super(context); this.name = name; this.customDialogListener = customDialogListener; } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.dialog); //设置标题 setTitle(name); etName = (EditText)findViewById(R.id.edit); Button clickBtn = (Button) findViewById(R.id.clickbtn); clickBtn.setOnClickListener(clickListener); } private View.OnClickListener clickListener = new View.OnClickListener() { @Override public void onClick(View v) { customDialogListener.back(String.valueOf(etName.getText())); MyCustomDialog.this.dismiss(); } };}
最后再完成MainActivity:
import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity implements OnClickListener { private TextView resultText; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); resultText = (TextView) findViewById(R.id.result); Button showDialogBtn = (Button) findViewById(R.id.showdialog); showDialogBtn.setOnClickListener(this); } @Override public void onClick(View v) { MyCustomDialog dialog = new MyCustomDialog(this,"Enter your name",new MyCustomDialog.OnCustomDialogListener() { @Override public void back(String name) { resultText.setText("Enter name is "+name); } }); dialog.show(); }}
这样就搞定了
0 0
- 自定义Dialog---继承Dialog
- 自定义Dialog android Dialog
- 自定义Dialog
- 自定义Dialog
- 自定义dialog
- 自定义 Dialog
- 自定义dialog
- 自定义 dialog
- 自定义Dialog
- 自定义 Dialog
- 自定义Dialog
- 自定义dialog
- 自定义Dialog
- 自定义 Dialog
- 自定义Dialog
- 自定义Dialog
- 自定义Dialog
- 自定义Dialog
- mahout0.11.0的安装及使用
- Gradle 导入错误
- Mina源码阅读笔记(四)—Mina的连接IoConnector
- 微信公众号 修改 应用签名 不生效
- android中的aidl进程间通信
- 自定义Dialog
- 将时间格式转换成秒数
- Hadoop 实现kmeans 算法
- Android 调用系统相机拍照的返回结果
- HTML img 刷新图片的问题
- svn的merge使用例子
- Win7系统下无法运行调试提示BORdbk70.dll未注册问题解决
- 苹果漏洞:Siri会泄露你的个人资料!
- Android_(自定义view_1之牛刀小试)