Невозможно расширить AppCompatActivity, так как я уже расширяю ListActivity

Я использую TwitterKit для загрузки списка твитов в упражнении. Я хотел бы добавить собственный ActionBar к моей деятельности. Я не могу найти способ одновременно расширить AppCompatActivity и ListActivity... Есть ли обходные пути или решения для этого? Пожалуйста, смотрите код ниже

public class travel_info extends ListActivity{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_travel_info);


        getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
        getSupportActionBar().setDisplayShowCustomEnabled(true);
        getSupportActionBar().setCustomView(R.layout.custom_line_info);
        View view = getSupportActionBar().getCustomView();


        Twitter.initialize(this);
        final UserTimeline userTimeline = new UserTimeline.Builder()
                .screenName("TfLTravelAlerts")
                .build();
        final TweetTimelineListAdapter adapter = new TweetTimelineListAdapter.Builder(this)
                .setTimeline(userTimeline)
                .build();
        setListAdapter(adapter);
    }
}

2 ответа

Я не могу найти способ расширить AppCompatActivity и ListActivity одновременно

Если вы хотите использовать ListView в своем приложении, то используйте его напрямую, не расширяя ListActivity. Смотрите здесь

Вы можете продлить только один класс. И реализовать интерфейсы из многих источников.

Продление нескольких классов недоступно.

вы могли бы использовать ListActivity или же ListView внутри обычного Activity, В новейших версиях Android предпочтительным способом отображения элементов в списке является использование так называемого RecyclerView.

Пожалуйста, смотрите связанную документацию. Это довольно хорошо и полезно. Помимо именования конвекции, RecyclerView дает вам больше гибкости и имеет встроенный шаблон ViewHolder для повторного использования представлений во время прокрутки, что повышает производительность приложения. Перед введением RecyclerView Вы должны были реализовать шаблон ViewHolder самостоятельно.

Вместо Activity или же ListActivity, вы должны использовать AppCompatActivity и место RecyclerView внутри него для обратной совместимости со старыми системами и устройствами.

Другие вопросы по тегам