大家晚上好,上回讲到Dialog三种样式,其实还有一种比前面三个都重要的一款样式,简称高富帅样式,因为有了这个样式,使得界面更美观,让人眼前一亮。没错,那就是自定义Dialog,恩。下面给大家上代码运行的界面。
相信大家对这个界面非常喜欢,这是根据自己的爱好,心情,想怎么弄就怎么弄,约束性低,自由多了。往往这比其他三款好用的多,学会了,吃到老。
1.设置xml文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="200dp"
android:layout_height="200dp"
android:background="@drawable/bg_yellow"
android:orientation="vertical" >
<TextView
android:id="@+id/name_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="5dp"
android:text="请输入你的姓名"
android:textSize="20sp" />
<EditText
android:id="@+id/body_et"
android:layout_width="150dp"
android:layout_height="30dp"
android:layout_gravity="center_horizontal"
android:layout_marginTop="15dp"
android:background="@drawable/search_bar_edit_normal" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="50dp"
android:orientation="horizontal" >
<Button
android:id="@+id/ok_btn"
style="@style/MyButton"
android:background="@drawable/drawable_selector"
android:text="确定" />
<Button
android:id="@+id/cancle_btn"
style="@style/MyButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:background="@drawable/drawable_selector"
android:text="取消" />
</LinearLayout>
</LinearLayout>
这是布局文件,可以根据自己的需要,充分发挥自己想象,创造有个性的布局。
2.在src下编程java文件
/**
* //自定义对话框
*/
private void divDialog() {
//创建dialog对象,第一个参数:上下文 第二个参数:dialog的布局主题,其中这里要设置主题,下面有讲到
final Dialog dialog = new Dialog(context, R.style.MyDialog);
//添加布局,自定义Dialog的xml
dialog.setContentView(R.layout.div_dialog);
//找到布局Id,这里要有dialog.,因为是在Dialog布局的,没有的话,就是其他view布局了
final EditText et = (EditText) dialog.findViewById(R.id.body_et);
Button okBtn = (Button) dialog.findViewById(R.id.ok_btn);
Button cancleBtn = (Button) dialog.findViewById(R.id.cancle_btn);
//确定按钮
okBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//获取编辑框里面的内容
String str = et.getText().toString().trim();
//销毁
dialog.dismiss();
Toast.makeText(DialogActivity.this, str, Toast.LENGTH_SHORT)
.show();
}
});
//取消按钮
cancleBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
dialog.show();
}
3.在res-->values-->styles.xml配置Dialog主题
//设置style,属性名为MyDialog,它的父类是:android:Theme.Dialog
<style name="MyDialog" parent="android:Theme.Dialog">
//设置Dialog背景样式,name:背景 @android.color/transparent:颜色
<item name="android:windowBackground">@android:color/transparent</item>
</style>
自定义Dialog大功告成,代码不是很多,也没什么难点,就是三个步骤,三个基本点,懂得学会用,你就是高富帅了,。样式美观,大方,深受美女喜欢。
今天就到这了,小编该洗洗睡了。晚安,好梦。