【发布时间】:2017-04-07 08:45:34
【问题描述】:
private Spinner spinnerMonth;
public View onCreateView(LayoutInflater inflater
, @Nullable ViewGroup container
, @Nullable Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
_view = inflater.inflate(R.layout.fragment_spinnerMonth, container, false);
// Month
spinnerMonth = (Spinner) _view.findViewById(R.id.spinnerMonth);
spinnerMonth.setAdapter(monthAdapter);
spinnerMonth.setSelection(_selectedMonth - 1);
return _view;
}
private void saveData() {
spinnerMonth.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
Log.d("month",i);
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
}
我上面的代码。如果我确定一个全局 Spinner,onItemSelected 不起作用。如果我确定一个本地微调器,它是工作。为什么会这样?我需要一个全局 Spinner。
【问题讨论】:
-
在 onActivity 创建方法中编写微调器 onitemclicklistner
-
saveData() 什么时候执行?
-
bingo 主要问题是
private void saveData()将此代码放入 onCreateView ... 应在方法中创建视图时设置列表器。如果您想要方法然后在 onCreateView 中调用此方法
标签: android android-spinner onitemselectedlistener