评分栏膨胀导致我的应用程序崩溃
Rating bar inflated crashing my app
当用户使用"Consumido"设置一项时,他需要为该项设置一个评分。我用一个评级栏膨胀视图,当用户单击“确定”按钮时,我尝试这样做。
builder.setNeutralButton(labelEditar, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
if(regraDeNegocioSingleton.getListaDeItensSingleton().getListaDeItensCulturais().get(position).isConsumido()){
regraDeNegocioSingleton.getListaDeItensSingleton().getListaDeItensCulturais().get(position).setConsumido(false);
}
else{
regraDeNegocioSingleton.getListaDeItensSingleton().getListaDeItensCulturais().get(position).setConsumido(true);
AlertDialog.Builder avaliacaoDialog = new AlertDialog.Builder(TelaCadastrados.this);
avaliacaoDialog.setTitle("Avalie este item!");
avaliacaoDialog.setView(R.layout.layout_alert_dialog_avaliacao);
avaliacaoDialog.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
regraDeNegocioSingleton.getListaDeItensSingleton().getListaDeItensCulturais().get(position).setAvaliacao(reAvalia.getRating());
}
});
avaliacaoDialog.show();
}
Toast.makeText(TelaCadastrados.this, "Status de consumido alterado para: " + labelToast, Toast.LENGTH_SHORT).show();
}
});
点击 "Ok" 时,应用程序崩溃。
谢谢!
您设置了对话框的视图,但您在调用 reAvalia.getRating()
时从未将 reAvalia
设置为任何内容。这就是您获得 NullPointerExeption 的原因。
当用户使用"Consumido"设置一项时,他需要为该项设置一个评分。我用一个评级栏膨胀视图,当用户单击“确定”按钮时,我尝试这样做。
builder.setNeutralButton(labelEditar, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
if(regraDeNegocioSingleton.getListaDeItensSingleton().getListaDeItensCulturais().get(position).isConsumido()){
regraDeNegocioSingleton.getListaDeItensSingleton().getListaDeItensCulturais().get(position).setConsumido(false);
}
else{
regraDeNegocioSingleton.getListaDeItensSingleton().getListaDeItensCulturais().get(position).setConsumido(true);
AlertDialog.Builder avaliacaoDialog = new AlertDialog.Builder(TelaCadastrados.this);
avaliacaoDialog.setTitle("Avalie este item!");
avaliacaoDialog.setView(R.layout.layout_alert_dialog_avaliacao);
avaliacaoDialog.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
regraDeNegocioSingleton.getListaDeItensSingleton().getListaDeItensCulturais().get(position).setAvaliacao(reAvalia.getRating());
}
});
avaliacaoDialog.show();
}
Toast.makeText(TelaCadastrados.this, "Status de consumido alterado para: " + labelToast, Toast.LENGTH_SHORT).show();
}
});
点击 "Ok" 时,应用程序崩溃。 谢谢!
您设置了对话框的视图,但您在调用 reAvalia.getRating()
时从未将 reAvalia
设置为任何内容。这就是您获得 NullPointerExeption 的原因。