ch016 Android 自定义对话框.
--------------------------------------------AndroidManifest.xml----------------------------------
<manifestxmlns:android="http://schemas.android.com/apk/res/android"
package="com.ch16"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk
android:minSdkVersion="10"
android:targetSdkVersion="15"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN"/>
<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
--------------------------------------------Layoutactivity_main.xml---------------------------
<RelativeLayoutxmlns: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">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="@string/hello_world"
tools:context=".MainActivity"/>
</RelativeLayout>
--------------------------------------------Layoutmydialog.xml---------------------------------
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/dialog_bg"
android:orientation="vertical">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/ico"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="50dp"
android:src="@drawable/dialog_title_image"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:layout_toRightOf="@+id/ico"
android:text="Title"
android:textSize="42dp"/>
</RelativeLayout>
<!--中间分割线-->
<TextView
android:layout_width="wrap_content"
android:layout_height="1dp"
android:background="@drawable/lins"/>
<!--消息体-->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="这是一个自定义Dialog"/>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="30dp"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:layout_marginTop="20dp">
<Button
android:id="@+id/ok"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:text="确定"/>
<Button
android:id="@+id/btn_canal"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/ok"
android:text="取消"/>
</RelativeLayout>
</LinearLayout>
--------------------------------------------MainActivity.java--------------------------------------
packagecom.ch16;
importandroid.app.Activity;
importandroid.os.Bundle;
publicclassMainActivityextendsActivity{
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/*实例化自定义对话框*/
MyDialogdialog=newMyDialog(this,R.style.mydialog);
/*显示对话框*/
dialog.show();
}
}
--------------------------------------------MyDialog.java----------------------------------
packagecom.ch16;
importandroid.app.Dialog;
importandroid.content.Context;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.widget.Button;
importandroid.widget.Toast;
/**
*
*项目名称:com.ch16
*类名称:MyDialog
*类描述:自定义对话框
*创建人:方勇
*创建时间:2012-11-26上午11:28:39
*Copyright(c)方勇-版权所有
*/
publicclassMyDialogextendsDialog{
/*确定按钮*/
privateButtonbtn_ok;
/*上下文*/
privateContextmcontext;
publicMyDialog(Contextcontext){
super(context);
mcontext=context;
}
publicMyDialog(Contextcontext,inttheme){
super(context,theme);
mcontext=context;
}
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.mydialog);
findViews();
setListeners();
}
/*实例化UI*/
privatevoidfindViews(){
btn_ok=(Button)findViewById(R.id.ok);
}
/*设置确定按钮监听器*/
privatevoidsetListeners(){
btn_ok.setOnClickListener(onClickListener);
}
privateView.OnClickListeneronClickListener=newView.OnClickListener(){
@Override
publicvoidonClick(Viewv){
showResults();
}
};
/*显示结果*/
privatevoidshowResults(){
Toast.makeText(mcontext,"test......",Toast.LENGTH_LONG).show();
}
}
--------------------------------------------Stylemydialog.xml-----------------------------------
<resourcesxmlns:android="http://schemas.android.com/apk/res/android">
<stylename="mydialog"parent="android:Theme.Dialog">
<itemname="android:windowFrame">@null</item>
<!--无标题-->
<itemname="android:windowNoTitle">true</item>
<itemname="android:windowBackground">@drawable/dialog_bg</item>
<!--悬浮效果-->
<itemname="android:windowIsFloating">true</item>
<!--遮罩效果-->
<itemname="android:windowContentOverlay">@null</item>
</style>
</resources>
--------------------------------------------效果图--------------------------------------------------
<!--EndFragment-->
更多相关文章
- Java语言程序设计(五)从对话框获取输入及String类型
- Java语言程序设计(六)对话框应用实例及随机数的产生
- vscode是什么?vscode实例用法汇总
- Asp.Net Core如何安装?详解Asp.Net Core安装的实例教程
- 浅谈 下载实例 核心架构设计
- 分享一篇ASP.NET实现进度条的图文实例
- 有关经典实例的文章推荐10篇
- SignalR实现实时Web聊天的实例代码
- 详细介绍MvcPager分页控件使用的实例方法