2014-03-02 98 views
1

我尝试将我的应用程序翻译成其他语言。我通过相关的翻译向项目添加了一些本地文件values/strings.xml。该文本现在被翻译,但它是不够的。有两个问题:android多语言应用程序

  1. 在某些语言中,单词长于英文,因此文本超出了空间。例如,按钮上的单词中的几个字母出现在第二行。

Example in English Example in Russion

  • 我有 '从' 的字段的形式和 '到'。在英语中,它们从左到右显示,但是在从右到左的语言中,它们应该显示在屏幕的右侧。
  • 我该如何解决这些问题?

    +0

    安置自己的布局,你的代码 –

    回答

    1

    您可以为从右到左的语言定义其他布局。您应该将其放置到您的语言代码>的布局<。

    如果字符串太大,也可以截断并替换字符串的最后一个字符。 你可以做到这一点采用了android:ellipsize和android:单线属性:

    <TextView 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:id="@+id/text_mytext" 
         android:ellipsize="end" 
         android:singleLine="true" 
         /> 
    

    另一种方法是定义dimens.xml文字大小需要语言和按如下方式使用它:

    在dimens.xml

    <dimen name="text_size">32sp</dimen> 
    

    布局:

     <TextView 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:id="@+id/text_mytext" 
         android:textSize="@dimen/text_size" 
         />