Для UWP мне нужен другой размер для ширины столбца в Grid
. Кроме того, значение должно отличаться на планшете и смартфоне.Можно ли смешивать OnIdiom и OnPlatform в XAML (Xamarin.Forms)?
Следующий код падает приложение
<ColumnDefinition>
<ColumnDefinition.Width>
<OnIdiom.Phone>
<OnPlatform x:TypeArguments="GridLength" iOS="*" Android="*" WinPhone="100" />
</OnIdiom.Phone>
<OnIdiom.Tablet>
<OnPlatform x:TypeArguments="GridLength" iOS="*" Android="*" WinPhone="200" />
</OnIdiom.Tablet>
</ColumnDefinition.Width>
</ColumnDefinition>
с
Тип OnIdiom.Phone не найден в Xmlns http://xamarin.com/schemas/2014/forms
Код в ViewCell
. Поэтому я не могу использовать дополнительный ResourceDictionary
, а также OnSizeAllocated()
в коде отсутствует файл.
Можно ли использовать OnIdiom
и OnPlatform
?
Я попытался запустить приложение на локальной машине. Здесь ширина 200 не соблюдается. Разве он не попадает в категорию «Tablet»? – testing
'Device.OS' является' Windows' и 'Device.Idiom' является' Desktop'. Существуют ли какие-либо определения для этого в XAML? «WinPhone» отлично работал. – testing
поддержка «Desktop» в OnIdiom приземлилась несколько дней назад https://github.com/xamarin/Xamarin.Forms/pull/420. Исправление будет присутствовать в предстоящем 2.3.4-pre1 –