在我的应用程序中,我将显示一个带有消息和确定按钮的警告框。在后台我打了一些api并将其保存到数据库中(我在异步任务中执行)。我的要求是我要禁用确定按钮,直到后台进程完成。完成后台处理后,我需要在警告框中启用ok按钮。
我的提示框创建代码:
helpBuilder1 = new AlertDialog.Builder(Home.this);
helpBuilder1.setTitle("Welcome");
helpBuilder1.setMessage("Thank you for waiting while App Installs");
mOkButton = helpDialog1.getButton(AlertDialog.BUTTON_POSITIVE);
mOkButton.setEnabled(false);
if(mOkButton.isEnabled()==false){
Log.e("Home.java - ShowPopUp", "button is disablled");
new First_Time_Sync().execute();
}
mOkButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
helpDialog1.dismiss();
showSilde_show_PopUp();
}
});
helpDialog1 = helpBuilder1.create();
helpDialog1.show();
请帮帮我。
答案 0 :(得分:1)
在AlertDialog上使用getButton()来获取底层的ok按钮
Button mOkButton = helpDialog1.getButton();
mOkButton.setEnabled(false)`
答案 1 :(得分:0)
使用您的按钮创建自定义AlertDialog布局,并使用
将其添加到AlertDialogLayoutInflater inflater = (LayoutInflater) this.getSystemService(LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.yourlayout,(ViewGroup) findViewById(R.id.yourLayoutsOuterLinearLayout));
builder.setView(view);
布局看起来像这样:
<LinearLayout
android:id="@+id/yourLayoutsOuterLinearLayout"
android:layout_height:...>
<Button
android:id="@+id/myButton"
android:...>
</Button>
</LinearLayout>