码迷,mamicode.com
首页 > 其他好文 > 详细

Fragment中添加spinner控件问题

时间:2015-08-07 15:59:45      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:

今天编写Android程序,遇到一个问题:

fragment是activity的一部分,具有高度的自由性。我编写了一个Fragment程序,在其中添加了Spinner控件(就是普通的添加方式),但是就是运用ArrayAdapter进行数据绑定的时候

ArrayAdapter<String>(View,int,String)中的View类型参数,并不能用常用的this来代替。必须用getActivity().getBaseContext()来代替。

下面来说明一下具体的原因:
this应用上下文返回activity的当前上下文,属于activity。当它被摧毁时,activity也被摧毁。但是在你的事例中它是指Spinner实例,因为我们在onItemSelected(AdapterView<?>arg0, View arg1, int arg2, long arg3)方法中使用它。这个方法是来自Spinner类,而Spinner从AdapterView.OnItemSelectedListener接口中继承这个方法。
getBaseContext()ContextWrapper中的方法。

因为这里的this指的不是Activity,而是spinner这个类

Fragment中添加spinner控件问题

标签:

原文地址:http://www.cnblogs.com/tiger-rose/p/4711015.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!