Улучшение плавности прокрутки в Android ListView

У меня есть Android ListView , который имеет небольшие (скажем, 1-5 кадров) заикания во время прокрутки примерно каждую секунду или около того. Я понимаю, что многие телефоны Android имеют эти проблемы с плавностью анимации, однако на моем телефоне ( Motorola A855 под управлением Android 2.2), собственный список контактов прокручивается довольно плавно. Представление элементов в списке контактов более сложное, чем представление элементов в моем списке, а именно:


    
    

Я хочу добиться такой же плавности, как и исходный список контактов. Кажется, это должно быть возможно без оптимизации в машинном коде, но, возможно, я ошибаюсь в этом.

Я пробовал несколько вещей: я еще больше упростил представление элемента и попытался создать его программный экземпляр, а не в XML. Я также попытался изменить способ своей реакции на события щелчка по элементам по этой ссылке:

http://groups.google.com/group/android-developers/browse_thread/thread/7dc261a6b382ea74?pli=1

Нет из этих вещей, похоже, влияют на производительность.

Могу ли я что-нибудь сделать в своем приложении для повышения производительности? Я собираюсь развернуть это приложение на нескольких телефонах, поэтому изменение настроек на телефоне или рутирование устройства в моем случае не вариант. Вот метод getView из моего класса адаптера:

    public View getView(int position, View convertView, ViewGroup parent) {
        LayoutInflater flater = (LayoutInflater)context.getSystemService(ListActivity.LAYOUT_INFLATER_SERVICE);
        layout = flater.inflate(R.layout.song_view, parent, false);
        TextView first = (TextView)layout.findViewById(R.id.firstLine);
        TextView second = (TextView)layout.findViewById(R.id.secondLine);

        Thing t = array.get(position);
        first.setText(t.title);
        second.setText(t.name);
        return layout;
    }

Заранее спасибо!

8
задан Kara 1 February 2014 в 03:49
поделиться