Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ViewPager没有快速响应_Java_Android_Android Fragments_Android Viewpager - Fatal编程技术网

Java ViewPager没有快速响应

Java ViewPager没有快速响应,java,android,android-fragments,android-viewpager,Java,Android,Android Fragments,Android Viewpager,在使用ViewPager时,我注意到它的响应速度不是很快,这意味着它在片段之间切换时会减慢,有点滞后。 有人知道此代码是如何导致问题的吗? public class List_adapter : BaseAdapter<Element> { public List<Element> _list; FragmentOne _context; public List_adapter(FragmentOne context, List<Ele

在使用ViewPager时,我注意到它的响应速度不是很快,这意味着它在片段之间切换时会减慢,有点滞后。 有人知道此代码是如何导致问题的吗?

public class List_adapter : BaseAdapter<Element>
{
    public List<Element> _list; 
    FragmentOne _context;


    public List_adapter(FragmentOne context, List<Element> list) 
    {                                                 
    super(context, list);                     
        _list = list;
        _context = context;
    }
    @Override
    public int getCount() 
    {
        return _list.size();
    }
    @Override
    public Object getItem(int position) 
    {
        return _list.get(position);
    }
    @Override
    public long getItemId(int position) 
    {
        return getItem(position).hashCode();
    }
    @Override
    public View getView(int position, View convertView, ViewGroup parent) 
    {
        LayoutInflater inflater = (LayoutInflater)getActivity().getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View view = inflater.inflate(R.layout.row, parent, false); 
        Element item = getItem(position);
        TextView lbl = (TextView)view.findViewById(R.id.label);
        TextView prop = (TextView)view.findViewById(R.id.Prop);
        lbl.setText(item.getlabel()); 
        prop.setText(item.getprop()); 
        return view; 
    }


}
公共类列表\u适配器:BaseAdapter
{
公开名单(public List);;
零碎的一个语境;
公共列表\u适配器(FragmentOne上下文,列表)
{                                                 
超级(上下文、列表);
_列表=列表;
_上下文=上下文;
}
@凌驾
public int getCount()
{
返回_list.size();
}
@凌驾
公共对象getItem(int位置)
{
返回_list.get(位置);
}
@凌驾
公共长getItemId(int位置)
{
返回getItem(position).hashCode();
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图)
{
LayoutFlater充气器=(LayoutFlater)getActivity().getApplicationContext().getSystemService(Context.LAYOUT\u充气器\u服务);
视图=充气机。充气(R.layout.row,父级,false);
元素项=获取项(位置);
TextView lbl=(TextView)view.findViewById(R.id.label);
TextView prop=(TextView)view.findViewById(R.id.prop);
lbl.setText(item.getlabel());
prop.setText(item.getprop());
返回视图;
}
}
  • 用于平滑滚动列表
  • 用于在视图页面内部显示之前初始化视图的工具
    ViewPager

  • 延迟与列表滚动无关,它发生在通过各种ViewPager切换时。另外,我试图实现屏幕外页面限制,但这并没有解决我的问题。也许你在主线程中做得太多了?尝试将内存或CPU扩展操作传递给后台线程。这个问题太不精确了。尝试代码看看是什么导致了滞后。我在主线程中做了所有事情,但创建另一个线程并不能解决任何问题,因为列表是在片段的onCreateView方法中填充的,我尝试在另一个线程中执行它,但它没有做任何事情。