Android(安卓)程式开发:(一)详解Activity —— 1.4显示“普通”对话框
16lz
2021-01-26
有的时候,可能需要弹出一个对话框,以便从用户的输入来获取某些确认信息。这种情况下,可以重写Activity基类中的受保护方法(protected)onCreateDialog()。
1.创建一个名为Dialog的工程。
2.main.xml中的代码。
[java] view plain copy- <?xmlversion="1.0"encoding="utf-8"?>
- <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:orientation="vertical">
- <Button
- android:id="@+id/btn_dialog"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="Clicktodisplayadialog"
- android:onClick="onClick"/>
- </LinearLayout>
3.DialogActivity.java中的代码。
[java] view plain copy- packagenet.horsttnann.Dialog;
- importandroid.app.Activity;
- importandroid.app.AlertDialog;
- importandroid.app.Dialog;
- importandroid.content.DialogInterface;
- importandroid.os.Bundle;
- importandroid.view.View;
- importandroid.widget.Toast;
- publicclassDialogActivityextendsActivity{
- CharSequence[]items={"Google","Apple","Microsoft"};
- boolean[]itemsChecked=newboolean[items.length];
- /**Calledwhentheactivityisfirstcreated.*/
- @Override
- publicvoidonCreate(BundlesavedInstanceState){
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- }
- publicvoidonClick(Viewv){
- showDialog(0);
- }
- @Override
- protectedDialogonCreateDialog(intid){
- switch(id){
- case0:
- returnnewAlertDialog.Builder(this)
- .setIcon(R.drawable.ic_launcher)
- .setTitle("Thisisadialogwithsomesimpletext...")
- .setPositiveButton("OK",
- newDialogInterface.OnClickListener(){
- publicvoidonClick(DialogInterfacedialog,
- intwhichButton){
- Toast.makeText(getBaseContext(),
- "OKclicked!",Toast.LENGTH_SHORT)
- .show();
- }
- })
- .setNegativeButton("Cancel",
- newDialogInterface.OnClickListener(){
- publicvoidonClick(DialogInterfacedialog,
- intwhichButton){
- Toast.makeText(getBaseContext(),
- "Cancelclicked!",
- Toast.LENGTH_SHORT).show();
- }
- })
- .setMultiChoiceItems(items,itemsChecked,
- newDialogInterface.OnMultiChoiceClickListener(){
- publicvoidonClick(DialogInterfacedialog,
- intwhich,booleanisChecked){
- Toast.makeText(
- getBaseContext(),
- items[which]
- +(isChecked?"checked!"
- :"unchecked!"),
- Toast.LENGTH_SHORT).show();
- }
- }).create();
- }
- returnnull;
- }
- }
4.调试。
点击按钮弹出对话框,在CheckBox上面打勾,就会弹出一个Toast提示,显示选中物件的文本信息。点击“OK”或“Cancel”按钮会使对话框消失。
效果图:
更多信息请查看java进阶网http://www.javady.com
更多相关文章
- Android(安卓)滑动效果进阶篇(五)—— 3D旋转
- Android进阶(二)https请求No peer certificate的解决方法.
- Android(安卓)SDK 2.3与Eclipse最新版开发环境搭建(五)
- Android(安卓)中访问网页 webView
- 颜色选择器【ColorPickerPreference】自定义Preference 对话框
- Android(安卓)WindowManager悬浮窗
- Android(安卓)自定义弹出对话框实例
- [置顶] 我的Android进阶之旅------>Android中查看应用签名信息
- mono for android读书笔记之真机调试
随机推荐
- Android中获取正在运行的应用程序-----Ac
- ScaleGestureDetector SimpleOnScaleGest
- 【转载】Using SQLite from Shell in And
- Eclipse 开发 Android, Hello, DatePicke
- 解决com.google.code.findbugs:jsr305依
- Unable to execute dex: java.nio.Buffer
- android lowmem killer 触发条件
- C# and android
- AndroidFragment切换
- android jetpack Navigation 获取当前激