【问题标题】:Cannot resolve constructor ArrayAdapter (Listview , fragment )无法解析构造函数 ArrayAdapter (Listview , fragment )
【发布时间】:2017-03-08 14:49:12
【问题描述】:

我想在我的片段中加载一个列表视图,适配器的问题是错误 - Cannot resolve constructor ArrayAdapter

这是我课堂上的onCreateView 方法:

 public class AndroidGUIModifier implements IMyComponentGUIModifier, IFragmentEvents {

    @Override
    public void onCreateView() {
        tv1 = (TextView) fragment.findViewById("xtv1");
        tv2 = (TextView) fragment.findViewById("xtv2");
        lv=(ListView) fragment.findViewById("xdevices") ;

        mydevices = new ArrayList<String>();

        ArrayAdapter<String> adapter = new ArrayAdapter<String>(AndroidGUIModifier.this,android.R.layout.simple_list_item_1,mydevices);// the problem here : Cannot resolve constructor ArrayAdapter

        lv.setAdapter(adapter);
    }

}

【问题讨论】:

    标签: java android listview


    【解决方案1】:

    从片段中获取Context,然后将其传递给ArrayAdapter

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(fragment.getContext(), android.R.layout.simple_list_item_1, mydevices);
    

    【讨论】:

    • 我知道了:无法解析构造函数 'ArrayAdapter(java.security.AccessControlContext, int, java.util.List)
    • 你在扩展Fragment吗?
    • 公共类AndroidGUIModifier实现IMyComponentGUIModifier,IFragmentEvents {
    【解决方案2】:

    如果它在片段内,您需要为第一个参数传递上下文,我认为通常像这样?

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, mydevices);
    

    如果你使用 AndroidGUIModifier 作为你的 Fragment,你可以尝试扩展 Fragment 类吗?

    public class AndroidGUIModifier extends Fragment implements IMyComponentGUIModifier, IFragmentEvents {
    

    【讨论】:

    • 您是否使用 AndroidGUIModifier 作为您的片段?
    • 问题就像 Nika 关于 fragment.getContext() 所说的,谢谢。
    猜你喜欢
    • 1970-01-01
    • 2015-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-08
    相关资源
    最近更新 更多