从 OnItemClickListener 获取数据
Get Data out of OnItemClickListener
我正在尝试从 Android Studio 中的这个微调器的 OnClickListener 函数中获取数据。
这是一段代码。
roleAdapter = ArrayAdapter.createFromResource(this,R.array.role, android.R.layout.simple_spinner_item);
roleAdapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
roleSpinner.setAdapter(roleAdapter);
roleSpinner.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int ?>position,
long id) {
String roleText = parent.getItemAtPosition(position).toString();
}
});
我有一个 "Next Button" 可以继续到下一个 Activity,但我想检查以确保用户在继续到下一个 Activity,否则创建一个 Toast 消息说请 select 从这个微调器中选择一个项目。
或许我只是不需要使用适配器...我不知道。
尝试使用这个:
使用setOnitemSelectedListener
代替setOnItemClickListener
roleSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String roleText = String.valueOf(roleSpinner.getSelectedItem());
}
您可以像这样在 Activity 中设置一个 class 成员变量
private String roleText;
然后在您的 onItemSelectedListener
中将该变量设置为用户选择的任何内容
roleSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
roleText = String.valueOf(roleSpinner.getSelectedItem());
}
};
然后当他们点击"Next Button"你可以检查变量是否已经设置
if( roleText != null ) {
// Toast message saying they have to select something
}
else {
// go to next activity
}
Spinner 有一个名为 spinner.getSelectedItem() 的方法来获取 Spinner 的选定项。通过使用该方法,您可以检查是否选择了微调项,如下面的代码所述。
if(spinner != null && spinner.getSelectedItem() !=null ) {
//one of the spinner items is selected. Do whatever you want.
} else {
}
我正在尝试从 Android Studio 中的这个微调器的 OnClickListener 函数中获取数据。 这是一段代码。
roleAdapter = ArrayAdapter.createFromResource(this,R.array.role, android.R.layout.simple_spinner_item);
roleAdapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
roleSpinner.setAdapter(roleAdapter);
roleSpinner.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int ?>position,
long id) {
String roleText = parent.getItemAtPosition(position).toString();
}
});
我有一个 "Next Button" 可以继续到下一个 Activity,但我想检查以确保用户在继续到下一个 Activity,否则创建一个 Toast 消息说请 select 从这个微调器中选择一个项目。
或许我只是不需要使用适配器...我不知道。
尝试使用这个:
使用setOnitemSelectedListener
代替setOnItemClickListener
roleSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String roleText = String.valueOf(roleSpinner.getSelectedItem());
}
您可以像这样在 Activity 中设置一个 class 成员变量
private String roleText;
然后在您的 onItemSelectedListener
中将该变量设置为用户选择的任何内容
roleSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
roleText = String.valueOf(roleSpinner.getSelectedItem());
}
};
然后当他们点击"Next Button"你可以检查变量是否已经设置
if( roleText != null ) {
// Toast message saying they have to select something
}
else {
// go to next activity
}
Spinner 有一个名为 spinner.getSelectedItem() 的方法来获取 Spinner 的选定项。通过使用该方法,您可以检查是否选择了微调项,如下面的代码所述。
if(spinner != null && spinner.getSelectedItem() !=null ) {
//one of the spinner items is selected. Do whatever you want.
} else {
}