0

我正在开发一个程序,我想在其中单击一个按钮并在屏幕中间出现一个弹出窗口,显示随机图像。然后在单击弹出窗口时,它会关闭弹出窗口。

我的问题这可能吗?如果是这样怎么办?

4

2 回答 2

1

是的,你不能。为此,您需要创建一个自定义警报对话框,该对话框使用其中的 imageview 填充布局,并在单击所需对象时调用它。您还需要通过向 AlertDialog 添加一个关闭按钮来关闭它来设置一个 onlick 侦听器。

于 2012-04-11T15:22:37.043 回答
0

是的,你可以使用这样的东西:

Dialog confirmDeleteDialog = new Dialog(this);
confirmDeleteDialog.setContentView(R.layout.custom_message_dialog);
//This allows dialog to be closed with back button
confirmDeleteDialog.setCancelable(true);
//DisplayMetrics will get the screen dimensions and allow you to 
//declare a center point
DiaplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
int screenHeight = displaymetrics.heightPixels; //Divide by 2 to get mid
int screenWidth = displaymetrics.widthPixels; //Divide by 2 to get mid

Button closeButton = (Button) confirmDeleteDialog.findViewById(R.id.close_button);
closeButton.setOnClickListener(this);
confirmDeleteDialog.show();

custom_message_dialog.xml - 可能看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

<Button
android:id="@+id/close_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:clickable="true"/>

</RelativeLayout>

点击监听器

public void onClick(View v) {
if(v == closeButton){
confirmDeleteDialog.dismiss();
}}
于 2012-05-29T23:22:01.263 回答