2014-03-25 81 views
0

我目前正在做一个android项目,现在需要在其中一个片段中使用片段而不是活动,我有一个使用Activity方法的getView方法,但我不太清楚如何将其更改为符合片段,任何人都可以提供帮助?从活动变为片段

public View getView(int position, View convertView, ViewGroup parent) { 
     //This method sets what each list view's items contain. 
     //Ensure the view isn't null 
     View itemView = convertView; 
     if (itemView == null) { 
      itemView = getLayoutInflater().inflate(R.layout.news_rss_item, parent, false); 
     } 

     //Find the current event to use 
     RssItem currentItem = newsItems.get(position); 

     //Replace default text with event information 
     //Set name 
     TextView itemTitle = (TextView) itemView.findViewById(R.id.itemEventName); 
     itemTitle.setText(currentItem.getTitle()); 


     return itemView; 
    } 
} 

这是getView方法。

+0

是你的arrayadapter的getview吗? –

回答

0

在片段中,调用getActivity()来获取活动实例。

我想你需要

itemView = getActivity().getLayoutInflater().... 
0

你应该附上ContextAdapter这样的:

public class MyAdapter extends BaseAdapter { 
    private Context mContext; 

    public MyAdapter(Context c) { 
     mContext = c; 
    } 

    ... 
} 

有了这个,你可以得到你的背景 - FragmentActivity - 与mContext变量,并用它在你的Adapter

LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
... 
itemView = inflater.inflate(R.layout.news_rss_item, null);