Как осмотреть потоки XML от отладчика в Visual Studio 2003

Эта строка приводит к сбою приложения

android:scaleType="fitCenter"

из CircleImageView github.

Ограничения

ScaleType всегда CENTER_CROP, и вы получите исключение, если попытаетесь изменить его. Это (в настоящее время) дизайн, так как он идеально подходит для изображений профиля.

blockquote>

В logcat вы увидите эту ошибку.

Caused by: java.lang.IllegalArgumentException: ScaleType FIT_CENTER not supported.

Решение: Удалить android:scaleType="fitCenter" из XML-файла макета.

11
задан Andrew M 6 May 2009 в 16:17
поделиться

2 ответа

Вы можете просто добавить это выражение в окно просмотра после того, как MemoryStream будет готов:

(new StreamReader(xmlStream)).ReadToEnd();

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

Эта ситуация часто возникает при отладке кода с потоками, поэтому я избегаю их для простых, автономных задач. К сожалению, для больших систем это ' Не всегда легко узнать заранее, следует ли вам делать свой код ориентированным на поток или нет, поскольку это во многом зависит от того, как он будет использоваться. Однако я считаю, что использование потоков во многих случаях является преждевременной оптимизацией.

14
ответ дан 3 December 2019 в 08:05
поделиться

Хорошо, мне не удалось использовать отладчик без изменения кода. Я добавил в следующем фрагменте, который позволяет мне либо поставить точку останова, либо использовать debugview.

private MemoryStream GetXml()
{
    MemoryStream xmlStream;
    xmlStream = new MemoryStream();
    XmlWriter writer = new XmlTextWriter(xmlStream, Encoding.UTF8);
    writer.WriteStartDocument();
    //etc etc...
    writer.WriteEndDocument();
    writer.Flush();
    xmlStream.Position = 0;

    #if DEBUG
    string temp;
    StreamReader st=new StreamReader(xmlStream);
    temp=st.ReadToEnd();
    Debug.WriteLine(temp);
    #endif

    return xmlStream; //Goes off to XSLT transform thingy!
}

Я все же предпочел бы просто как-то посмотреть на объект xmlstream в отладчике, даже если он нарушает поток выполнения, но в А пока это лучшее, что мне удалось.

1
ответ дан 3 December 2019 в 08:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: