Вы можете добавить фиктивное поле, чтобы предотвратить самозакрывающийся элемент.
[XmlText]
public string datavalue= " ";
Или, если вам нужен код для вашего класса, тогда ваш класс должен быть таким.
public class Notes
{
[XmlElement("Type")]
public string typeName { get; set; }
[XmlElement("Data")]
private string _dataValue;
public string dataValue {
get {
if(string.IsNullOrEmpty(_dataValue))
return " ";
else
return _dataValue;
}
set {
_dataValue = value;
}
}
}
Попробуйте Пикассо , он имеет автоматическое кэширование изображений.
Я не совсем понимаю идею загрузки изображений пользователем, кэширования их, но не позволяю отображать их позже.
У вас есть 2 варианта, на мой взгляд.
Во-первых, нужно использовать Glide cache, но вы не имеете полного контроля над тем, когда и как будут очищаться изображения.
Второй вариант - сохранить изображения как files
в личном каталоге (пользователь не сможет просматривать эти изображения) и создать некую логику в приложении (на основе ваших ограничений), чтобы контролировать, когда и как отображать эти изображения для пользователей в приложении.