gpt4 book ai didi

java - Android Edittext 的起始值不能是我数组中的第一个项目(Edittext Spinner)

转载 作者:行者123 更新时间:2023-11-30 04:04:13 28 4
gpt4 key购买 nike

这一定是一个我可能会再次忽略的简单问题。这是我的问题我的 string.xml 上有一个字符串数组

<string-array name="country_array">
<item>Alabama</item>
<item>Florida</item>
<item>Los Angeles</item>
<item>Virginia</item>
<item>California</item>
<item>Texas</item>
<item>Hawaii</item>
<item>Miami</item>
<item>New Jersey</item>
<item>Boston</item>
<item>Philadelphia</item>
<item>VaChina</item>
</string-array>

所以现在我正在调用我的主要 Activity 并将其放在我的微调器上

selectedCountry = (EditText) findViewById(R.id.etCity);
//get the spinner from resource
Spinner spinner = (Spinner) findViewById(R.id.spinnerCountry);

//then defining ArrayAdapter using country_array
ArrayAdapter<CharSequence> adapter =ArrayAdapter.createFromResource(this, R.array.country_array,
android.R.layout.simple_spinner_item);
//set the appearance of widget items that show when open the widget
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
//set the adapter to spinner
spinner.setAdapter(adapter);
//set the action listener
spinner.setOnItemSelectedListener(listener);

现在在微调器的 onclicklistener 上,这是我的代码

View.OnClickListener selectCountry = new View.OnClickListener() {
public void onClick(View v) {
Spinner spinner = (Spinner) findViewById(R.id.spinnerCountry);
spinner.performClick();
}
};

private OnItemSelectedListener listener =new OnItemSelectedListener() {
//do what ever you want to do when item selected
public void onItemSelected(AdapterView<?> parent, View view, int pos,
long id) {
//i get the item using selected item position and set it into selectedCountry
selectedCountry.setText(parent.getItemAtPosition(pos).toString());
}

public void onNothingSelected(AdapterView<?> parent) {

}

};

一切正常,直到我发现我的 selectedCountry 文本是数组中的第一项。无论如何,我可以在我的 edittext 上添加默认值吗?

最佳答案

请在您的字符串数组中添加“选择国家/地区”作为第一项。

喜欢

<string-array name="country_array">
<item>Select Country</item>
<item>Alabama</item>
<item>Florida</item>
<item>Los Angeles</item>
<item>Virginia</item>
<item>California</item>
<item>Texas</item>
<item>Hawaii</item>
<item>Miami</item>
<item>New Jersey</item>
<item>Boston</item>
<item>Philadelphia</item>
<item>VaChina</item>
</string-array>

然后

在 onItemSelected() 中添加以下代码

public void onItemSelected(AdapterView<?> adapterView, View view,int position, long arg3) 
{
if(!spinner.getSelectedItem().toString().equalsIgnoreCase("Select Country"))
{
selectedCountry.setText(spinner.getSelectedItem().toString());
}
}

关于java - Android Edittext 的起始值不能是我数组中的第一个项目(Edittext Spinner),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12003300/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com