package
com.prgguru.android;
import
java.util.Locale;
import
android.os.Bundle;
import
android.app.Activity;
import
android.content.Intent;
import
android.content.res.Configuration;
import
android.content.res.Resources;
import
android.util.DisplayMetrics;
import
android.view.View;
import
android.widget.AdapterView;
import
android.widget.Button;
import
android.widget.Spinner;
import
android.widget.Toast;
import
android.widget.AdapterView.OnItemSelectedListener;
public
class
AndroidLocalize
extends
Activity {
Spinner spinnerctrl;
Button btn;
Locale myLocale;
@Override
public
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.main);
spinnerctrl = (Spinner) findViewById(R.id.spinner1);
spinnerctrl.setOnItemSelectedListener(
new
OnItemSelectedListener() {
public
void
onItemSelected(AdapterView<?> parent, View view,
int
pos,
long
id) {
if
(pos ==
1
) {
Toast.makeText(parent.getContext(),
"You have selected Tamil"
, Toast.LENGTH_SHORT)
.show();
setLocale(
"ta"
);
}
else
if
(pos ==
2
) {
Toast.makeText(parent.getContext(),
"You have selected Hindi"
, Toast.LENGTH_SHORT)
.show();
setLocale(
"hi"
);
}
else
if
(pos ==
3
) {
Toast.makeText(parent.getContext(),
"You have selected English"
, Toast.LENGTH_SHORT)
.show();
setLocale(
"en"
);
}
}
public
void
onNothingSelected(AdapterView<?> arg0) {
}
});
}
public
void
setLocale(String lang) {
myLocale =
new
Locale(lang);
Resources res = getResources();
DisplayMetrics dm = res.getDisplayMetrics();
Configuration conf = res.getConfiguration();
conf.locale = myLocale;
res.updateConfiguration(conf, dm);
Intent refresh =
new
Intent(
this
, AndroidLocalize.
class
);
startActivity(refresh);
}
}