快速改变Android系统语言

时间:2014-12-20 02:59:48

标签: java android eclipse user-interface locale

我正在学习普通话,想要比使用默认系统设置更快地在英语/普通话(或英语/普通话/葡萄牙语/西班牙语)之间更改我的Android智能手机(Sony Xperia)的语言。它的方式,我必须输入设置,滚动到它的中间(这比它在列表的开头或结尾处慢),单击语言&输入,点击语言,必须一直滚动到中文(它应该已经在顶部,在#34;最近使用的语言"中,但只有我的母语总是在那里),点击中文,最后点击确定。

我想将这些超过6次点击减少到快速设置区域中的单个按钮(还有4个图标的空间):当手机使用某种语言时,点按该图标会更改为下一个语言,拿着图标会打开一个菜单来添加/删除语言/更改订单等等。

我是Android开发的新手,所以我不知道应用程序是否有可能更改系统语言(需要root权限?我自己想要它,即使我例如,不允许在Google Play上分享它。我已经看到很多关于如何更改应用语言的答案,但这并不是我想要的。我还在Google Play中发现了许多应用程序,他们都承诺快速切换系统语言"等,但没有一个在我的设备上工作。我得到的最接近的是this,但看起来像死路一条。

那么,有可能吗?如果是,那么文档在哪里?

1 个答案:

答案 0 :(得分:1)

我认为这就是你可能想要的东西!!!

如果您想拥有自己的应用程序,可以试试我刚为您创建的应用程序here !!!

Language Picker Widget

Java代码

public class MainActivity extends Activity {
    private Button btn;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btn = (Button)findViewById(R.id.add_button);
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //in the line below it tells it to go to the language selection list
                Intent intent = new Intent(Settings.ACTION_LOCALE_SETTINGS);
                startActivity(intent);
                MainActivity.this.finish();


            }
        });
    }

}

布局文件

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">


    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Change System Language"
        android:id="@+id/add_button"
        android:layout_centerVertical="true"
        android:layout_centerHorizontal="true" />
</RelativeLayout>

您可以在eclipse中启动项目,使用上面的代码进行活动和布局,然后在模拟器上进行测试