【问题标题】:compatible my layout with 29 different language使我的布局与 29 种不同的语言兼容
【发布时间】:2012-06-05 10:27:44
【问题描述】:

我正在开发一个使用 29 种不同语言的 Android 应用程序。我在资源文件夹中根据英语创建了布局,但是当语言更改时,文本视图 n 文本大小会发生变化和重叠。有什么方法可以让所有语言的布局保持不变,以便文本视图和文本的对齐方式保持不变?

【问题讨论】:

    标签: android android-layout


    【解决方案1】:

    是的,很容易。您为每种语言创建一个值文件夹,例如 values-devalues-en 在每个文件夹中你可以创建strings.xml

    <string name="no_items">there are no items</string>
    

    这是给英文的。为每种语言创建它。

    【讨论】:

    • 感谢您的回答,但我不想更改要保持布局不变的字符串,即图形布局
    【解决方案2】:

    如果您阅读了开发人员文档(此处为:http://developer.android.com/guide/topics/resources/localization.html#strategies),您可以很好地描述您的问题以及解决问题的一些方法。请参阅“设计灵活的布局”部分

    你可以:

    a) 为每种语言提供不同的布局,每种语言具有不同的布局文件(尽管这可能会增加您维护应用程序的大量开销)

    b) 做一个更灵活的布局,所以当由于语言而传入长字符串时,一切都会自行调整。那么您就不必担心用户正在使用哪种语言运行(或者,如果某些布局仍然看起来不正确,您可以创建更少的特定于该语言的布局)。

    【讨论】:

      【解决方案3】:

      您可以扩展 TextView 以自动调整文本大小以适应.. 此答案中给出了自定义 TextView 的示例https://stackoverflow.com/a/3378422/886001

      【讨论】:

        猜你喜欢
        • 2011-01-11
        • 2021-12-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-04-28
        • 2016-06-20
        相关资源
        最近更新 更多