AlertDialog(自定义对话框)示例
来源:互联网 发布:香蕉tv网络电视下载 编辑:程序博客网 时间:2024/04/27 14:46
一、定义一个与系统对话框不同的布局,然后调用setView()将布局inflater到alertDialog上:
二、效果图:
三、帖代码:
MainActivity
package com.Evan.demo_alertdialog;import android.app.Activity;import android.app.AlertDialog;import android.content.Intent;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class MainActivity extends Activity {private Button button;private AlertDialog alert=null;private AlertDialog.Builder builder=null;private View view;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button=(Button) findViewById(R.id.button1);builder=new AlertDialog.Builder(MainActivity.this);//加载自定义的Viewfinal LayoutInflater inflater=MainActivity.this.getLayoutInflater();view=inflater.inflate(R.layout.view_dialog_custom, null,false); builder.setView(view);builder.setCancelable(false); alert=builder.create(); view.findViewById(R.id.btn_close).setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {alert.dismiss();}}); view.findViewById(R.id.btn_blog).setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {Intent intent=new Intent(MainActivity.this,MyActivity.class);startActivity(intent);alert.dismiss();}}); view.findViewById(R.id.btn_cancle).setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {alert.dismiss();}}); button.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {alert.show();}});}}Myactivity:
package com.Evan.demo_alertdialog;import android.app.Activity;import android.os.Bundle;import android.webkit.WebView;import android.webkit.WebViewClient;import android.widget.Toast;public class MyActivity extends Activity {private static long ExitTime = 0;private WebView webView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);webView=new WebView(this);webView.setWebViewClient(new WebViewClient(){@Overridepublic boolean shouldOverrideUrlLoading(WebView view, String url) {view.loadUrl(url);return true;}});webView.getSettings().setJavaScriptEnabled(true);//设置webView属性,运行JS脚本webView.loadUrl("http://blog.csdn.net/xiangyong_1521");//连接setContentView(webView);//显示}/* * 我们需要重写回退按钮的事件,当用户点击回退按钮判断 * 1、webView.canGoBack()判断网页是否能后退,可以则goback() * 2、如果不可以,点击两次退出APP,弹出提示Toast */@Overridepublic void onBackPressed() {if(webView.canGoBack()){webView.goBack();}else{if(System.currentTimeMillis()-ExitTime>2000){Toast.makeText(getApplicationContext(), "再按一次退出我的微博", 0).show();ExitTime=System.currentTimeMillis();}else{super.onBackPressed();}}}}view_dialog_custom.xml:
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/RelativeLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <LinearLayout android:id="@+id/titlelayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:orientation="horizontal" android:background="@drawable/y3" android:padding="5dp" > <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView1" android:layout_centerVertical="true" android:src="@drawable/aa4" /> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:text="提示" android:layout_marginTop="5dp" android:textColor="#ffffff" android:textSize="18sp" android:layout_marginLeft="10dp" android:textStyle="bold" /> <Button android:id="@+id/btn_cancle" android:layout_width="30dp" android:layout_height="30dp" android:layout_marginTop="5dp" android:layout_marginLeft="198dp" android:background="@drawable/btn_selctor_exit" /> </LinearLayout> <LinearLayout android:id="@+id/ly_detail" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/titlelayout" android:layout_centerInParent="true" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:layout_marginTop="20dp" android:textSize="16sp" android:text="是否进入我的微博?" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/ly_detail" android:layout_marginTop="10dp" android:orientation="horizontal"> <Button android:id="@+id/btn_blog" android:layout_width="match_parent" android:layout_height="40dp" android:layout_margin="5dp" android:layout_weight="1" android:background="@drawable/btn_selctor_choose" android:clickable="true" android:text="访问博客" android:textColor="#ffffff" android:textSize="16sp" /> <Button android:id="@+id/btn_close" android:layout_width="match_parent" android:layout_height="40dp" android:layout_margin="5dp" android:layout_weight="1" android:background="@drawable/btn_selctor_choose" android:text="关闭" android:textColor="#ffffff" android:textSize="16sp" /> </LinearLayout></RelativeLayout>
btn_selctor_choose.xml:
<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/y4" android:state_pressed="true"/> <item android:drawable="@drawable/y3" /></selector>btn_selctor_exit.xml:
<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/vy" android:state_pressed="true"/> <item android:drawable="@drawable/vx"/></selector>
0 0
- AlertDialog(自定义对话框)示例
- AlertDialog(对话框)示例
- Android中的AlertDialog使用示例五(自定义对话框)
- AlertDialog自定义弹出对话框
- 自定义AlertDialog对话框布局
- Android 自定义AlertDialog对话框
- android,Alertdialog,自定义对话框
- 自定义对话框AlertDialog
- Android--自定义对话框--AlertDialog
- 自定义AlertDialog对话框
- AlertDialog 自定义对话框视图
- AlertDialog对话框-自定义View
- 使用AlertDialog.Builder自定义对话框
- Android自定义Alertdialog对话框实现
- Dialog对话框之自定义AlertDialog
- AlertDialog - 自定义单选对话框
- Android之AlertDialog自定义对话框
- android自定义对话框(AlertDialog)
- C#基础精华08(反射,程序集)
- IOS级联(省份和城市)
- HibernateUtil公共类的使用------java操作数据库(1)
- python tkinter实现简单计算器
- hdu2191(多重背包问题)
- AlertDialog(自定义对话框)示例
- Matlab Compiler或mcc的使用
- 一个导出指定包下 spring Controller excel清单的例子(包括包名、类名、方法名、访问路径)
- HDU 1213 How Many Tables
- 258. Add Digits
- 通过Hexo在GitHub搭站全记录
- java流与文件——对象流和序列化
- 日常开发——KVO的几个坑
- mongoDB