How to extends ListActivity where AppCompatActivity in Android Activity

14,246

If you want to use ListView in your app then directly use it without extending ListActivity. Like this

public class PullToRefreshActivity extends AppCompatActivity {
private LinkedList<String> mListItems;
PullToRefreshListView listView;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.pull_to_refresh);
    listView = (PullToRefreshListView) findViewById(R.id.list_view); 
    // Set a listener to be invoked when the list should be refreshed.
    listView.setOnRefreshListener(new PullToRefreshListView.OnRefreshListener() {
        @Override
        public void onRefresh() {
            // Do work to refresh the list here.
            new GetDataTask().execute();
        }
    });

    mListItems = new LinkedList<String>();
    mListItems.addAll(Arrays.asList(mStrings));

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

    listView.setAdapter(adapter);
}
Share:
14,246

Related videos on Youtube

p. ld
Author by

p. ld

Updated on October 22, 2022

Comments

  • p. ld
    p. ld over 1 year

    I want to use Activity extends ListActivity for PullToRefresh.But i have use CustomActionBar that's why using AppCompatActivity.How to solve this issue.Thanks in Advanced

    public class CustomActionActivity extends ListActivity
    
    public class PullToRefreshActivity extends ListActivity {
        private LinkedList<String> mListItems;
    
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.pull_to_refresh);
    
            // Set a listener to be invoked when the list should be refreshed.
            ((PullToRefreshListView) getListView()).setOnRefreshListener(new PullToRefreshListView.OnRefreshListener() {
                @Override
                public void onRefresh() {
                    // Do work to refresh the list here.
                    new GetDataTask().execute();
                }
            });
    
            mListItems = new LinkedList<String>();
            mListItems.addAll(Arrays.asList(mStrings));
    
            ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                    android.R.layout.simple_list_item_1, mListItems);
    
            setListAdapter(adapter);
        }
    

    Instead of this:

    public class CustomActionActivity extends AppCompatActivity