自定义Dialog
来源:互联网 发布:python 群蚂蚁算法 编辑:程序博客网 时间:2024/04/30 04:13
效果图1: 效果图2:
1.主Activity代码:
package com.jun.activity;import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class DialogActivity extends Activity {
private Button btn = null;
private Dialog dialog = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_dialog);
init();
}
private void init(){
btn=(Button) findViewById(R.id.btn);
btn.setOnClickListener(listener);
}
private OnClickListener listener =new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
showDialog();
}
private void showDialog() {
// TODO Auto-generated method stub
LayoutInflater inflater=LayoutInflater.from(DialogActivity.this);
final View v1=inflater.inflate(R.layout.dialog_my,null);
//R.layout.login与login.xml文件名对应,把login转化成View类型
AlertDialog.Builder dialog=new AlertDialog.Builder(DialogActivity.this);
dialog.setTitle("提醒");
dialog.s
dialog.setIcon(R.drawable.warning0);
dialog.setView(v1);//设置使用View
dialog.show();
}};
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_dialog, menu);
return true;
}
}
2.对话框布局文件 dialog_my.xml布局文件内容:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/activity_bg_wall"
>
<LinearLayout
android:id="@+id/bottom_bar_layout"
android:layout_width="match_parent"
android:layout_height="40dip"
android:minHeight="40.0dip"
android:layout_marginTop="150dip"
android:layout_marginBottom="0dp"
android:background="@drawable/bar_bg_dialog_title"
android:orientation="horizontal"
>
<Button
android:id="@+id/btn_ok"
android:layout_width="70dip"
android:layout_height="40dip"
android:layout_marginLeft="15dp"
android:gravity="center_vertical|center_horizontal"
android:textSize="16dp"
android:textColor="#000000"
android:background="@drawable/btn_bg_selecter"
android:text="取消"
/>
<Button
android:id="@+id/btn_cancle"
android:layout_width="70dip"
android:layout_height="40dip"
android:layout_marginLeft="130dp"
android:gravity="center_vertical|center_horizontal"
android:textSize="16dp"
android:textColor="#000000"
android:background="@drawable/btn_bg_selecter"
android:text="确定"
/>
</LinearLayout>
</RelativeLayout>
2.去标题栏,边框对话框设计:
⑴显示对话框的事件处理:
private void showCustomDialog()
{
//定义Dialog对象,/res/values/下的styles.xml文件十分重要R.style.CustomDialog
dialog = new Dialog(CustomDialogActivity.this, R.style.CustomDialog);
dialog.setContentView(R.layout.dialog_view);// 为对话框设置自定义布局
Button okBtn = (Button) dialog.findViewById(R.id.dialog_positive_button);
Button canclebtn = (Button) dialog.findViewById(R.id.dialog_negative_button);
okBtn.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
dialog.dismiss();
}
});
canclebtn.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
dialog.dismiss();
}
});
}
⑵styles.xml文件内容:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- 自定义Dialog -->
<style
name="CustomDialog"
parent="@android:Theme.Dialog">
<!--windowFrame框为无 -->
<item
name="android:windowFrame">@null</item>
<item
name="android:windowNoTitle">true</item>
<!-- 除去背景 -->
<item
name="android:windowBackground">@drawable/bg_transparent</item>
<!--是否浮现在activity之上 -->
<item
name="android:windowIsFloating">true</item>
<!-- 是否半透明 -->
<item
name="android:windowIsTranslucent">true</item>
<!-- 去掉覆盖层 -->
<item
name="android:windowContentOverlay">@null</item>
<!-- 设置背景颜色 -->
<item
name="android:background">#00000000</item>
</style>
<!-- Dialog动画 -->
<style
name="dialogWindowAnim"
parent="android:Animation">
<!-- 进入时的动画 -->
<item
name="android:windowEnterAnimation">@anim/dialog_enter_anim</item>
<!-- 退出时的动画 -->
<item
name="android:windowExitAnimation">@anim/dialog_exit_anim</item>
</style>
</resources>
⑶Dialog对话框的布局dialog_view.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:paddingLeft="20dp"
android:background="#00000000"
android:orientation="vertical" >
<TextView
android:id="@+id/title_bar"
android:layout_width="fill_parent"
android:layout_height="45dip"
android:background="@drawable/bar_bg_shelf"
android:gravity="center_vertical|center_horizontal"
android:text="测试"
android:textColor="#fff"
android:textSize="20dip" />
<TextView
android:id="@+id/promptTv"
android:layout_width="fill_parent"
android:layout_height="150dp"
android:layout_marginTop="0dip"
android:background="@drawable/dialog_bg_wall"
android:gravity="center"
android:text="@string/promptText"
android:textColor="#000"
android:textSize="16.0sp" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="45dp"
android:background="@drawable/bar_bg_shelf"
android:gravity="center"
android:orientation="horizontal"
>
<Button
android:id="@+id/dialog_positive_button"
android:layout_width="70dip"
android:layout_height="40dip"
android:layout_marginLeft="20dp"
android:layout_gravity="center_vertical"
android:background="@drawable/btn_bg_selecter"
android:gravity="center_vertical|center_horizontal"
android:text="确定"
android:textColor="#000000"
android:textSize="16dp" />
<Button
android:id="@+id/dialog_negative_button"
android:layout_width="70dip"
android:layout_height="40dip"
android:layout_marginLeft="90dp"
android:layout_gravity="center_vertical"
android:background="@drawable/btn_bg_selecter"
android:gravity="center_vertical|center_horizontal"
android:text="显示"
android:textColor="#000000"
android:textSize="16dp" />
</LinearLayout>
</LinearLayout>
来源:http://blog.csdn.net/qq435757399/article/details/8012310
- 自定义Dialog---继承Dialog
- 自定义Dialog android Dialog
- 自定义Dialog
- 自定义Dialog
- 自定义dialog
- 自定义 Dialog
- 自定义dialog
- 自定义 dialog
- 自定义Dialog
- 自定义 Dialog
- 自定义Dialog
- 自定义dialog
- 自定义Dialog
- 自定义 Dialog
- 自定义Dialog
- 自定义Dialog
- 自定义Dialog
- 自定义Dialog
- 分享一道笔试题目--关于static和extern变量的问题
- 第三款游戏制作前...
- java web应用程序的热部署
- 当他们说这些话时,爱就已经消失不在_伤感日志
- 30.在从1到n的正数中1出现的次数(数组)
- 自定义Dialog
- 不知道还要心痛多久_伤感的情绪日志
- POJ1573,Robot Motion,模拟水题,繁
- 求文章
- Android传感器---Position Sensor(一)
- 云计算平台
- FZU - 1981 Three kingdoms
- Struts 2 + Spring 3 + Hibernate 整合笔记
- 伤感日志_茫茫天涯走遍,寂寞心酸