在我出现AlertDialog几秒钟后,我的模拟器出现意外崩溃,然后才能选择一个选项。你对这个问题有什么看法吗?
我有一个包含多个对象的ListView。在LongClick上会出现小菜单。通过选择“删除”选项,我想要显示一个AlertDialog并询问用户是否确定他正在做什么。
@Override
public boolean onContextItemSelected(MenuItem item) {
final AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
switch (item.getItemId()) {
case R.id.rename:
// rename the entry in the list
return true;
case R.id.delete:
// confirmation popup before deleting
new AlertDialog.Builder(getActivity()).setTitle(R.string.app_name).setMessage("Are you sure you want to delete this package?").setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
// Really delete the package
}
}).setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
// Do nothing
}
}).show();
return true;
default:
return super.onContextItemSelected(item);
}
}
在崩溃之前,我在日志中收到此消息:
EmuGL:警告:错误的通用指针0x7f64d97be818
答案 0 :(得分:0)
使用这样可以解决崩溃问题。
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == R.id.delete) {
return true;
}
return super.onOptionsItemSelected(item);
}
答案 1 :(得分:0)
显然问题是AVD 本身!我使用的是破碎的系统映像。再下载它修复了问题。