选择时如何修剪微调器选择?
Posted
技术标签:
【中文标题】选择时如何修剪微调器选择?【英文标题】:How to trim Spinner selection when selected? 【发布时间】:2018-07-10 12:53:20 【问题描述】:我想修剪用户在 Spinner 中的选择。当用户选择他的国家(例如“+232 塞拉利昂”)时,当项目被选中并且微调器关闭时仅显示“+232”。
提前感谢您的建议。
// I have two arrays of String that i join to make one
String[] phoneCodes ="232", "44", "1";
String[] countries = "Sierra Leone", "United Kingdom", "United States";
String[] phoneCodesCountries = new String[3];
// Here i join those two arrays, for example "+232 Sierra Leone"
for (int i = 0; i < phoneCodes.length; i++)
phoneCodesCountries[i] = "+" + phoneCodes[i] + " " + countries[i];
// Setting the adapter to phoneCodesArray
ArrayAdapter<String> phoneCodesArray = new ArrayAdapter<String>(RegisterActivity.this, android.R.layout.simple_spinner_item, phoneCodesCountries);
phoneCodesArray.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spPhoneCodes.setAdapter(phoneCodesArray);
【问题讨论】:
您找到解决方案了吗? 【参考方案1】:您可以通过
获得微调器选择mySpinner.getSelectedItem().toString();
因此,在您的示例中,该值将是 +232 Sierra Leone。现在您可以像这样拆分整个字符串来获取国家/地区代码:
String[] split = mySpinner.getSelectedItem().toString().split("\\+");
现在 split[0] 将得到您想要的结果 +232。
【讨论】:
感谢 Rino,获得选择和拆分对我来说非常清楚。我正在搜索的是当您单击项目“+232 Sierra Leone”以显示在关闭的 Spinner“+232”而不是“+232 Sierra Leone”中时。我想它应该在onItemSelected
以上是关于选择时如何修剪微调器选择?的主要内容,如果未能解决你的问题,请参考以下文章
如何根据 android studio 中的微调器选择更改 imageview 视图?