私はいくつかのオーディオトラックを再生するアプリをやろうとしています。トラックは "Music"ディレクトリ内にあり、固定されているとは言えないので、ファイル名を使って1行ずつ読むことはできません。Xamarin.Formsでは、プロジェクトのフォルダからアセットのリストを読み取る方法は?
ソリューションのディレクトリツリー:
MyAppPage.xaml.cs
namespace MyNamespace
{
public partial class MyAppPage : ContentPage
{
public MyAppPage()
{
InitializeComponent();
var files = Directory.GetFiles("./Music");
musicListView.ItemsSource = files;
}
}
}
MyAppPage.xaml
:MySolution/
MyApp/
Music/
track01
track02
...
App.xaml
MyAppPage.xaml
MyApp.Droid/
...
MyApp.iOS/
...
私は達成するために必要なものは次のようなものです
<?xml version="1.0" encoding="utf-8"?>
<ContentPage
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:MyNamespace"
x:Class="MyNamespace.MyAppPage">
<ContentPage.Content>
<ListView x:Name="musicListView" />
</ContentPage.Content>
</ContentPage>
私もしてみました:
var currentDir = Directory.GetCurrentDirectory();
var files = Directory.GetFiles(Path.Combine(currentDir, "Music"));
しかし、現在のディレクトリは、単に "/" です。私は単にパスを迷惑にしているのか、Xamarinがこの種の操作を許可していないのか分かりません。その場合、これを行うための標準的なアプローチはありますか?