Xamarin.Android 如何使用Assets目錄下的文件

原文: Xamarin.Android 如何使用Assets目錄下的文件

我的原創,轉載註明出處:http://blog.csdn.net/supluo/article/details/43672411java

Xamarin.Android  官網介紹地址:http://developer.xamarin.com/guides/android/application_fundamentals/resources_in_android/part_6_-_using_android_assets/android


這裏插入一下Assets與Raw目錄的異同點app

這兩個目錄的相同點:ide

   一、 這兩個目錄下的文件會在打包以後原封不動的保存在apk包中,不會編譯成二進制文件。工具

    二、這兩個目錄下的文件都是隻讀的。字體

不一樣點:ui

       1.res/raw中的文件會被映射到R.java文件中,訪問的時候直接使用資源ID即R.id.filename;assets文件夾下的文件不會被映射到R.java中,訪問的時候須要AssetManager類。

    2.res/raw不能夠有目錄結構,而assets則能夠有目錄結構,也就是assets目錄下能夠再創建文件夾this

Assets使得咱們能夠在程序中包含任意的文本、xml、音樂、視頻等文件,這就比如爲程序內設一些資源以供使用。更改程序字體就會在這個目錄下放置一些預設置的字體文件。spa

1、Xamarin.Android中如何打開Assets中的文件.net

一、設置文件生成操做方式爲AndroidAsset。(對着文件右鍵,彈出菜單中選擇屬性,便可看到生成方式一欄)。

    因爲有些開發者使用的是破解工具,而且版本都比較低,所以新增長的文件可能並非這個方式,所以這一點須要注意,不然這個可能成爲一個很是折磨人的問題。經過從其餘地方複製而來的文件的生成方式也可能不是上述生成方式。

二、在代碼中使用,假如如今Assets目錄下保存了一個名爲"read_asset.text"的文件

    var tv = new TextView (this);
    // Read the contents of our asset
    string content;
    using (StreamReader sr = new StreamReader (Assets.Open ("read_asset.txt")))
    {
        content = sr.ReadToEnd ();
    }
    // Set TextView.Text to our asset content
    tv.Text = content;
    SetContentView (tv);


上述代碼變能夠以流的形式讀取文本中的內容,Assets.Open的第二個參數能夠指定檢索數據的方式。


我的搞了個博客App,平時上個廁所,睡覺前等隨便看兩篇文章,總能有些收穫,但願你們支持!http://blog.csdn.net/supluo/article/details/43489475

相關文章
相關標籤/搜索