если вы используете expo, вы можете сделать что-то подобное
const soundObject = new Expo.Audio.Sound();
playSound = async () => {
await soundObject.loadAsync({uri:'the uri of your audio'});
soundObject.playAsync();
}
, теперь он должен начать проигрывать ваш mp3, для получения более подробной информации смотрите документацию по expo здесь https://docs.expo.io / версия / последнее / SDK / аудио
Проблема состоит в том, что родительские элементы предоставляют TextBox столько пространства, сколько это думает, что этому нужно, и когда больше текста будет присутствовать, это расширится вместо того, чтобы остаться в начальном автоматическом размере.
Одно решение здесь состоит в том, чтобы сделать другой авторазмерный элемент и связать TextBox. Ширина к нему:
<DockPanel>
<TreeView Width="150" DockPanel.Dock="Left"/>
<ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Margin="5" VerticalAlignment="Center" Text="Name"/>
<Border x:Name="b" Grid.Column="1" Margin="5"/>
<TextBox Width="{Binding ActualWidth, ElementName=b}"
MinWidth="200"
Grid.Column="1"
Margin="5"
VerticalAlignment="Center"
Text="Some Name"/>
</Grid>
</ScrollViewer>
</DockPanel>
Обратите внимание, что мы устанавливаем свойство Margin элемента автокалибровки (Граница). Это важно, потому что, если это не установлено, будет цикл:
Путем установки Поля на то же как TextBox изменение размеров TextBox не будет влиять на размер Сетки.