-1

我的代码:

public class SpeedZonesFragment extends Fragment implements OnItemSelectedListener {


    Spinner spinner;


... // Declaring onCreate and so on

    spinner = (Spinner) view.findViewById(R.id.chosen_zone);
    ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(MainActivity.this, R.array.speed_zones, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner.setAdapter(adapter);
    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() // the program continues

引发错误: No enclosing instance of the type MainActivity is accessible in scope

我知道它为什么这样做,但不知道如何解决它。我有MainActivitywhich 除了处理 ViewPager 的选项卡之外什么都不做。

我试过使用.createFromResource没有运气。

我知道解决方案可能是基本的,但经过几个小时的浏览解决方案并尝试不同的方法来实现后,OnItemSelectedListener我根本找不到答案。MainActivity对于以不同方式确定适配器范围或实现适配器(以使其正常工作) ,我缺少什么Listener

4

1 回答 1

3

而不是MainActivity.this,您可以getActivity()在您的片段中执行此操作。

于 2013-02-04T15:59:41.553 回答