我创建了一个AlertDialog,显示从我的数据库中显示的信息。问题是AlertDialog框根本没有显示。没有出现任何错误,这使得解决问题变得困难。
public void viewAll() {
button.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
Cursor result = myDB.getData();
if (result.getCount() == 0) {
showMessage("ERROR", "NO DATA");
return;
}
StringBuffer buffer = new StringBuffer();
while (result.moveToNext()) {
buffer.append("COL1: " + result.getString(1) + "\n");
buffer.append("COL2: " + restul.getString(2) + "\n");
buffer.append("COL3: " + result.getString(3) + "\n");
buffer.append("COL4: " + result.getString(4) + "\n");
}
showMessage("DATA", buffer.toString());
}
}
);
}
public void showMessage(String title, String message) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setCancelable(true);
builder.setTitle(title);
builder.setMessage(message);
builder.show();
}
原谅我使用伪代码
答案 0 :(得分:4)
首先创建AlertDialog
,然后在该AlertDialog
对象上调用show。
像这样:
AlertDialog dialog = builder.create();
dialog.show();
答案 1 :(得分:0)
请改为尝试:
AlertDialog.Builder adb = new AlertDialog.Builder(this)
.setCancelable(true)
.setTitle(title)
.setMessage(message)
.create();
adb.show();
或使用我的代码并将.create()替换为.show()。
答案 2 :(得分:0)
public void showMessage(String title, String message) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setCancelable(true);
builder.setTitle(title);
builder.setMessage(message);
builder.create().show();
}
使用它。希望它会奏效。如果没有,你可以改变这样的行:
AlertDialog.Builder builder = new AlertDialog.Builder(YourActivity.this);
然后它应该工作。