Я действительно устал, у меня есть этот код в onPostExecute, подключенный к AsyncTask, который загружает изображение. Дело в том, тост показывает, что размер ниже 20000 байт, но materialdialog никогда не проявляется, его, как если заявление является ложным, даже если тост подтверждает, что это правдаAsyncTask onPostExecute Dialog не работает
File imgFile = new File(getApplicationInfo().dataDir+"/files/"+imageNr+".jpg");
double bytes = imgFile.length();
Toast.makeText(getApplicationContext(), ""+bytes, Toast.LENGTH_LONG).show();
if (bytes<20000.0){
new MaterialDialog.Builder(MainActivity.this)
.title("Oh no!")
.content("We've run out of pictures! Would you like to start over or check if a new picture has been uploaded?")
.positiveText("Check again")
.negativeText("Start over")
.callback(new MaterialDialog.ButtonCallback() {
@Override
public void onPositive(MaterialDialog dialog) {
getImage();
}
@Override
public void onNegative(MaterialDialog dialog) {
int imageNr=1;
SharedPreferences.Editor editorsave = sharedPreferences.edit();
editorsave.putInt("ImageNr", imageNr);
editorsave.apply();
getImage();
}
});
} else {
Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
imageView.setImageBitmap(myBitmap);
// Do stuff here
}
Вы должны использовать MaterialDesignDialog.show в конце – eddykordo