2013-06-18 24 views
0

我翻譯我的應用程序的幾個語言,但現在我有一個問題所困擾!我有幾張帶有文字的圖片,有沒有辦法使用國家代碼提供可繪製的資源?如果我使用國家代碼將可繪圖添加到我的應用程序它會增加應用程序的大小?我不希望僅僅因爲這些圖像而將現在1MB的應用程序設爲4或5。繪項目按國家的Android

謝謝!

回答

4

等於您設置diferent語言與資源目錄值-ES值-FR值... 可以設置型動物可繪爲每個位置與目錄:

繪製-ES繪製-FR ... http://developer.android.com/training/basics/supporting-devices/languages.html

記住目錄的額外信息,具有特別重要性有關,你應該把在正確的位置http://developer.android.com/guide/topics/resources/providing-resources.html 例如,繪製-ES-華電國際

的問題你的apk的大小我想象你不需要爲所有的國家設置所有的圖像diferents,不是嗎?通常情況下,你只需要配置一些圖片

0

是的,有可能每個國家提供資源。看看這個答案如何做到這一點的詳細信息:Localization and drawables

它肯定會增加您的應用程序的大小。它,就像在軟件開發一切,性能(或圖像質量)和resouces之間的妥協(在這種情況下,APK的大小)。爲了避免成倍增加你的應用程序的大小,你可以嘗試提供每個區域的資源,而不是國家,或者乾脆,只提供了華電國際版本。

0

如果你不想增加與不同的可繪製apk文件的大小,您可以編寫一個自定義的ImageView和一個字符串設定在它的文本(將轉換)或放在ImageView的這樣設置他們的RelativeLayout內的頂部一個TextView:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"  
    android:gravity="center" 
    android:orientation="vertical" 
> 

<ImageView 
    android:id="@+id/yImage" 
    android:layout_width="fill_parent" 
    android:layout_height="25dp"/> 

<TextView 
    android:id="@+id/yTextView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBottom="@+id/yImage" 
    android:layout_alignLeft="@+id/yImage" 
    android:layout_alignRight="@+id/yImage" 
    android:layout_alignTop="@+id/yImage" 
    android:background="@color/transparent" 
    android:lines="2" 
    android:textColor="@color/Black" 
    android:textSize="14sp" 
    android:textStyle="bold" /> 
</RelativeLayout> 

這將是一個框架佈局也很容易。