내 회 전자를 Button> Dialog> Spinner로 변경하려고합니다.Android : Spinner의 "텍스트 메시지"를 선택한 경우
작품 완벽하게,하지만 아래의 메시지를 볼 수 없습니다 (오류가 발생하고 응용 프로그램을 닫습니다) :
"당신은 포르투갈어의 PT-BR 선택""우리가 KO-당신이 영어를 선택했다"
전 :
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view,
int pos, long id) {
if (pos == 0) {
Toast.makeText(parent.getContext(),
"You have selected English en-us", Toast.LENGTH_SHORT)
.show();
setLocale("en");
} else if (pos == 1) {
Toast.makeText(parent.getContext(),
"You have selected Português pt-br", Toast.LENGTH_SHORT)
.show();
setLocale("br");
}
}
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);
}
내 새로운 코드 :
Button bt_lang = (Button) findViewById(R.bt.language);
bt_lang.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("Select Language");
builder.setAdapter(adapter, new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
AdapterView<?> parent = null;
switch(which)
{
case 0:
setLocale("en");
Toast.makeText(parent.getContext(),
"You have selected English en-us", Toast.LENGTH_SHORT)
.show();
case 1:
setLocale("br");
Toast.makeText(parent.getContext(),
"Você selecionou Português pt-br", Toast.LENGTH_SHORT)
.show();
break;
}
dialog.dismiss();
}
});
builder.create();
builder.show();
}
});
}
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);
}
"앱이 고장났다"는 것은 무엇을 의미합니까? – Tenfour04
@ TenFour04 오류가 발생하고 응용 프로그램이 닫힙니다 – user2714605
로그에서 스택 추적을 게시 할 수 있습니까? 여기 – Tenfour04