UIImageView - Как получить имя файла присвоенного изображения?

Спасибо за указатели.

я не знаю, является ли это лучшим подходом к проблеме или нет, но здесь - как я заставил его работать. Я сослался на Microsoft XML, v2.6 dll в моем VBA, и затем следующий фрагмент кода, дают мне необходимые значения

Dim objXML As MSXML2.DOMDocument

    Set objXML = New MSXML2.DOMDocument

    If Not objXML.loadXML(strXML) Then  'strXML is the string with XML'
        Err.Raise objXML.parseError.ErrorCode, , objXML.parseError.reason
    End If

Dim point As IXMLDOMNode
Set point = objXML.firstChild

Debug.Print point.selectSingleNode("X").Text
Debug.Print point.selectSingleNode("Y").Text
78
задан Ahmad F 14 January 2019 в 10:49
поделиться

3 ответа

Нет. Вы не можете этого сделать.

Причина в том, что экземпляр UIImageView не хранит файл изображения. Он хранит отображение экземпляра UIImage . Когда вы создаете изображение из файла, вы делаете что-то вроде этого:

UIImage *picture = [UIImage imageNamed:@"myFile.png"];

Как только это будет сделано, ссылка на имя файла исчезнет. Экземпляр UIImage содержит данные независимо от того, где он их получил. Таким образом, UIImageView не может знать имя файла.

Кроме того, даже если бы вы могли, вы бы никогда не получили информацию о имени файла из представления. Это нарушает работу MVC.

86
ответ дан 24 November 2019 в 10:24
поделиться

Нет. Нет возможности сделать это изначально. Вам нужно будет создать подкласс UIImageView и добавить свойство imageFileName (которое вы устанавливаете при установке изображения).

9
ответ дан 24 November 2019 в 10:24
поделиться

Ни UIImageView, ни UIImage не хранят имя файла загруженного изображения.

Вы можете либо

1: (как было предложено Кенни Винкером выше) подкласс UIImageView, чтобы иметь свойство fileName или

2: назовите файлы изображений номерами (image1.jpg, image2.jpg и т. д.) и пометьте эти изображения соответствующим номером (tag = 1 для image1.jpg, tag = 2 для image2.jpg и т. д.) или

3: Иметь переменную уровня класса (например, NSString * currentFileName), которая обновляется всякий раз, когда вы обновляете изображение UIImageView

7
ответ дан 24 November 2019 в 10:24
поделиться