gpt4 book ai didi

android - Dismiss() 不适用于自定义 AlertDialog

转载 作者:行者123 更新时间:2023-11-30 03:18:30 25 4
gpt4 key购买 nike

我正在开发一个完全基于 servlet 的请求和响应的 android 应用程序。我在自定义警报对话框中填充了一些数据,其中我使用了两个东西,一个是十字按钮,它将从警报对话框中的列表中删除项目,更新警报对话框的 View ,第二件事是关闭按钮,该按钮将关闭此警报对话框。我正在展示我的警报对话框的完整编码。我通过所有这些方法在单击按钮时调用警报对话框。

 intiliazeOrderListDialog();
showOrderListDialog();

我的声明如下

public AlertDialog detailsDialog, orderDialog;
AlertDialog.Builder builder;

现在我要发布我的 intiliazeOrderListDialog() block 。

    public void intiliazeOrderListDialog() {  

builder = new AlertDialog.Builder(MainScreen.this);
mContext = getApplicationContext();

inflater = (LayoutInflater) mContext.getSystemService(LAYOUT_INFLATER_SERVICE);
orderDialogLayout = inflater.inflate(R.layout.my_order_list,(ViewGroup)findViewById(R.id.order_list_root));
orderList = (ListView) orderDialogLayout.findViewById(R.id.order_list);

ibOrderDelete = (ImageButton)orderDialogLayout.findViewById(R.id.deleteOrder);
tvPrice = (TextView) orderDialogLayout.findViewById(R.id.order_list_total);
tvTaxes = (TextView) orderDialogLayout.findViewById(R.id.order_list_taxes);
tvTotal = (TextView) orderDialogLayout.findViewById(R.id.order_list_grand_total);
Button bclose = (Button) orderDialogLayout.findViewById(R.id.close);
Button bPlaceOrder = (Button) orderDialogLayout.findViewById(R.id.my_order_placeorder);
bclose.setOnClickListener(new OnClickListener() {

public void onClick(View v) {
orderDialog.dismiss();

System.out.println(" click on closowse");

}
});

bPlaceOrder.setOnClickListener(new OnClickListener() {

public void onClick(View v) {
System.out.println("Place order click");

palceMyOrdertoServer();
new SendOrderFromTable().execute();
System.out.println("place order to server is called");
String msg = "Your Order is Successfully placed to Kitcken";
Message msgObject = new Message();
msgObject.what = 1;
msgObject.obj = msg;
addMenuItemHandler.sendMessage(msgObject);


orderDialog.dismiss();

}
});
}

最后我要发布 showOrderListDialog(); block

  public void showOrderListDialog() {  
builder.setView(orderDialogLayout);
orderDialog = builder.create();
orderDialog.show();
}

我知道我发布了太多代码,但它对那些想帮助我的人来说很方便。我有一个非常简单的问题,为什么我的

            orderDialog.dismiss();

对我不起作用。?在此先感谢大家。

最佳答案

我终于解决了自己的问题。 “自助是最好的帮助 ;;”。

是setOnClickListener中调用方法的问题。

我只是叫它,

android:clickable="true"
android:onClick="clickHandler"

if (v.getId() == R.id.myOrder) {
System.out.println("Click my Order");
System.out.println("OrderListAdapter.totalCount ="
+ OrderListAdapter.totalCount);
// select COUNT(*) from CDs;

int jcount = 0;
jcount = countjournals();
System.out.println("jcount = " + jcount);

// Count implementation at my Order
if (jcount < 1) {
alertShow();
} else {
intiliazeOrderListDialog();
showOrderListDialog();
}

// startActivity(new Intent(RestaurantHome.this,
// MyOrderList.class));

}

关于android - Dismiss() 不适用于自定义 AlertDialog,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19603493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com