如何使用getSupportActionBar()扩展ListActivity的活动?

时间:2016-12-12 11:04:13

标签: android android-layout android-studio

这是我想要使用操作栏的活动。我的活动是扩展ListActivity,我无法弄清楚:如何在此活动中调用getSupportActionBar()。

我查看了stackoverflow上用户提供的所有解决方案。请指导。

public class FileChooserActivity1 extends ListActivity {

    private File currentFolder;
    private FileArrayAdapter fileArrayListAdapter;
    private FileFilter fileFilter;
    private File fileSelected;
    private ArrayList<String> extensions;
    final int FILE_CHOOSER = 1;
    final int JPG=111;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

       // currentFolder = new File(Environment.getExternalStorageDirectory().getAbsolutePath());
        currentFolder=new File("/storage/emulated/0/SALESKIT");
        fill(currentFolder);
    }

    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            if ((!currentFolder.getName().equals("/storage/emulated/0/SALESKIT"/*Environment.getExternalStorageDirectory().getName()*/))
                    && (currentFolder.getParentFile() != null)&&(!currentFolder.getParentFile().getName().equalsIgnoreCase("0"))) {
                currentFolder = currentFolder.getParentFile();
                fill(currentFolder);
            } else {
                Log.i("FILE CHOOSER", "canceled");
                /*setResult(Activity.RESULT_CANCELED);
                finish();*/
                Intent intent=new Intent(FileChooserActivity1.this,SplashScreen.class);
                startActivity(intent);
            }
            return false;
        }
        return super.onKeyDown(keyCode, event);
    }


            }



        fileArrayListAdapter = new FileArrayAdapter(FileChooserActivity1.this, R.layout.file_row, dirs,currentFolder.listFiles());
        this.setListAdapter(fileArrayListAdapter);
        currentFolder.listFiles();
    }



   }

2 个答案:

答案 0 :(得分:0)

使用 ListActivity ,您不会获得getSupportActionBar()方法,因为getSupportActionBar()方法适用于 AppCompatActivity FragmentActivity 。< / p>

但是您希望在链接下方显示ActionBar with ListActivity会对您有帮助。

Actionbar and ListActivity in one Activity

答案 1 :(得分:0)

我建议不要使用 ListActivity 来使用操作栏(工具栏),现在您可以使用支持工具栏相关修改的 AppCompatActivity 。如果您想在活动中列出清单,则可以在 AppCompatActivity 中使用 ListView RecyclerView