我打开图片。
@Override
public void onWindowFocusChanged(boolean hasFocus) {
if(hasfocus){
SharedPreferences sharedPreferences = getSharedPreferences("myData", Context.MODE_PRIVATE);
boolean isChecked = sharedPreferences.getBoolean("checkboxes", defaultMethod);
if(isChecked){
allcheckbox.setChecked(true);
}
}
super.onWindowFocusChanged(hasFocus);
}
如何限制打开的图像不超过1 mb?
答案 0 :(得分:1)
快速解决方案,具体取决于您的方法:
创建文件过滤器,然后将其与FileChooser
一起使用:
FileFilter myFilter = new FileFilter() {
@Override
public boolean accept(File file) {
javax.swing.filechooser.FileFilter ef =
new FileNameExtensionFilter("Image Files", "*.png", "*.jpg", "*.gif", "*.bmp", "*.jpeg");
return ef.accept(file) && (file.length() <= (1024L * 1024L));
}
};
fileChooser.setFileFilter(myFilter);
一个更详尽的示例是在单独的类中定义文件过滤器:
public class MaxSizeFileFilter implements FileFilter {
private final static long MAX_SIZE = (1024L * 1024L);
private final static String SUFFIX_REGEX = ".*\\.(png|jpg|gif|bmp|jpeg)";
@Override
public boolean accept(File file) {
try {
return file != null &&
file.isFile() &&
file.canRead() &&
file.getName().matches(SUFFIX_REGEX) &&
file.length() <= MAX_SIZE;
}
catch (SecurityException exc) {
System.err.println(exc.getMessage());
return false;
}
}
}
答案 1 :(得分:0)
我不熟悉File类,但是documentation似乎建议getTotalSpace方法返回文件大小(以字节为单位)。
如果这是正确的,那么您可以将mb的大小与1024进行比较,如果超过此大小则将其拒绝。
一个粗略的例子。
Expires=0