【发布时间】:2017-01-17 19:50:05
【问题描述】:
我有两个动态复选框,一个用于删除视频,另一个用于保存视频。我想添加一个确认框,以便在我单击复选框时确认我的操作。如何在我的代码中添加确认框?
deleteCheckBox.setOnClickListener(deleteRelatedThumbnail(deleteCheckBox));
View.OnClickListener deleteRelatedThumbnail(final CheckBox checkBox) {
return new View.OnClickListener() {
public void onClick(View v) {
int index = checkBox.getId();
if (((CheckBox) v).isChecked() && deleteVideoFile(index - 1)){
// if(deleteVideoFile(index-1)){
bitMapsAvailable.remove(index - 1);
bitMapsFilePath.remove(index - 1);
Toast.makeText(MainActivity.this, "Selected video file is deleted successfully.", Toast.LENGTH_SHORT).show();
showThumbnails();
}else{
Toast.makeText(MainActivity.this, "Not deleted", Toast.LENGTH_SHORT).show();
}
}
};
}
saveCheckBox.setOnClickListener(saveRelatedThumbnail(saveCheckBox));
View.OnClickListener saveRelatedThumbnail(final CheckBox checkBox) {
return new View.OnClickListener() {
public void onClick(View v) {
int index = checkBox.getId()-31;
if (((CheckBox) v).isChecked()){
String src = bitMapsFilePath.get(index-1);
String destination = mVideoFolder+"/"+new File(src).getName();
File srcFile = new File(src);
srcFile.renameTo(new File(destination));
Toast.makeText(MainActivity.this, "Saved in "+destination, Toast.LENGTH_SHORT).show();
bitMapsAvailable.clear();
for(String filePath: bitMapsFilePath ) {
File file = new File(filePath);
file.delete();
}
bitMapsFilePath.clear();
Toast.makeText(MainActivity.this, "Temporary videos are deleted successfully",Toast.LENGTH_SHORT).show();
showThumbnails();
}
}
};
}
【问题讨论】:
-
您可以创建一个包含 2 个按钮的布局 - 是和否。当您单击删除/保存时,显示该布局(从可见性变为可见),如果按下是按钮,则继续删除/保存,否则无论您喜欢什么。
-
使用 SharedPreference 来保存状态。看答案stackoverflow.com/questions/10016752/saving-checkbox-states
-
查看我编辑的答案,复制它并用您的删除复选框替换它
标签: android android-alertdialog android-checkbox