使用AppCompat的上下文操作栏

板状的

我目前正在将我的应用程序更改为使用AppCompat版本21,以便可以将Material design包含到我的应用程序中。

我的活动之一是列表视图,该类正在扩展ActionBarActivity。

因为这不是列表活动,所以我改用findViewById获取列表视图并将其存储在变量中,这样我就可以在整个类中使用它来设置列表视图的各个方面。

但是,由于某种原因,它最初是可以工作的,因为我已经实现了工具栏来代替操作栏并使用AppCompat,因此多选不再起作用。我可以选择一个项目,而其他所有项目都可以解决,只是选择失败了。

下面是我的代码,用于获取列表视图,设置点击侦听器和多选模式等:

Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar);
            setSupportActionBar(toolbar);

            CommonTasks commonTasks = new CommonTasks(ConnectionManager.this);
            SharedPreferences settings = commonTasks.getAppsSharedPreferences();

            adView = (AdView) findViewById(R.id.adView);
            CommonTasks.getAddRequest(ConnectionManager.this, adView, settings.getBoolean(Defines.SharedPreferenceSettings.UPGRADE_PURCHASED, false));

            getSupportActionBar().setDisplayHomeAsUpEnabled(true);

            swipeDetector = new SwipeDetector();
            listView = (ListView)findViewById(android.R.id.list);
            listView.setOnTouchListener(swipeDetector);
            listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
            listView.setOnItemClickListener(mListItemClickListener);
            listView.setMultiChoiceModeListener(new ModeCallBack());

            listView.setOnItemClickListener(mItemClickListener);

private class ModeCallBack implements MultiChoiceModeListener
    {

        @Override
        public boolean onActionItemClicked(ActionMode mode, MenuItem item) {

            switch (item.getItemId())
            {
                case R.id.manageCon_mnuDeleteConnection:
                    deleteConnection(selectedConnectionName);
                    break;
                case R.id.manageCon_mnuEditConnection:
                    editConnection(selectedConnectionName);
                    break;
            }
            return false;
        }

        @Override
        public boolean onCreateActionMode(ActionMode mode, Menu menu) {

            MenuInflater inflator = getMenuInflater();
            inflator.inflate(R.menu.manage_connections_context, menu);
            mode.setTitle("Change Connection");
            return true;
        }

        @Override
        public void onDestroyActionMode(ActionMode mode) {

        }

        @Override
        public boolean onPrepareActionMode(ActionMode mode, Menu menu) {

            return true;
        }

        @Override
        public void onItemCheckedStateChanged(ActionMode mode, int position,
                long id, boolean checked) {
            if (!handlingDBSelection)
            {
                handlingDBSelection = true;
                selectedConnectionName = connectionArrayAdapter.getItem(position)
                        .toString();
                final int checkedCount = listView.getCheckedItemCount();
                switch (checkedCount)
                {
                    case 0:
                        mode.setSubtitle(null);
                        break;
                    default:
                        listView.clearChoices();
                        listView.setItemChecked(position, true);
                        break;
                }
                handlingDBSelection = false;
            }
        }
伊万·斯科里克(Ivan Skoric)

为什么listView.clearChoices()每次检查项目状态更改时都打电话我没有看到完整的代码,但似乎您清除了所有检查,然后仅检查了该项目。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

选择多个项目时,动态隐藏上下文操作栏(CAB)中的项目

来自分类Dev

以编程方式单击上下文操作栏上的“完成”按钮

来自分类Dev

如何在support.v7.widget.Toolbar和Listview中使用上下文操作栏(CAB)?

来自分类Dev

Android Card UI样式具有上下文操作栏的ListView?

来自分类Dev

更改上下文操作栏复选标记/可绘制内容?

来自分类Dev

更改上下文操作栏的颜色

来自分类Dev

上下文相关的导航栏

来自分类Dev

ListView:隐藏上下文操作栏

来自分类Dev

样式化上下文操作栏?

来自分类Dev

如何以编程方式关闭文本选择上下文操作栏?

来自分类Dev

Android的新工具栏和上下文操作栏如何协同工作?

来自分类Dev

使用AppCompat的上下文操作栏

来自分类Dev

如何在上下文操作栏中使用ShareActionProvider共享多个文件?

来自分类Dev

如何在材料设计中使用appCompat自定义上下文操作栏

来自分类Dev

Android appcompact不显示来自上下文操作栏的复制操作以进行文本选择

来自分类Dev

如何在上下文操作栏/ ActionMode中显示文本和图标?

来自分类Dev

适配器中的Android上下文操作栏?

来自分类Dev

如何在上下文菜单模式下更改操作栏的样式主题

来自分类Dev

如何使用默认opions复制并全选以编程方式启动文本视图的上下文操作栏?

来自分类Dev

上下文操作栏不覆盖我的工具栏

来自分类Dev

Android Webview:覆盖上下文操作栏

来自分类Dev

嵌套上下文操作栏

来自分类Dev

使用上下文操作栏在操作栏中共享项目

来自分类Dev

更改上下文操作栏的颜色

来自分类Dev

如何在上下文操作栏中使用ShareActionProvider共享多个文件?

来自分类Dev

在特定视图中使用上下文操作栏时,无法解析方法startActionMode()

来自分类Dev

如何使上下文操作栏出现在底部

来自分类Dev

复制粘贴时隐藏应用程序/操作栏(上下文操作栏)

来自分类Dev

上下文操作栏-在现有操作栏上方添加了操作栏(两个操作栏)

Related 相关文章

  1. 1

    选择多个项目时,动态隐藏上下文操作栏(CAB)中的项目

  2. 2

    以编程方式单击上下文操作栏上的“完成”按钮

  3. 3

    如何在support.v7.widget.Toolbar和Listview中使用上下文操作栏(CAB)?

  4. 4

    Android Card UI样式具有上下文操作栏的ListView?

  5. 5

    更改上下文操作栏复选标记/可绘制内容?

  6. 6

    更改上下文操作栏的颜色

  7. 7

    上下文相关的导航栏

  8. 8

    ListView:隐藏上下文操作栏

  9. 9

    样式化上下文操作栏?

  10. 10

    如何以编程方式关闭文本选择上下文操作栏?

  11. 11

    Android的新工具栏和上下文操作栏如何协同工作?

  12. 12

    使用AppCompat的上下文操作栏

  13. 13

    如何在上下文操作栏中使用ShareActionProvider共享多个文件?

  14. 14

    如何在材料设计中使用appCompat自定义上下文操作栏

  15. 15

    Android appcompact不显示来自上下文操作栏的复制操作以进行文本选择

  16. 16

    如何在上下文操作栏/ ActionMode中显示文本和图标?

  17. 17

    适配器中的Android上下文操作栏?

  18. 18

    如何在上下文菜单模式下更改操作栏的样式主题

  19. 19

    如何使用默认opions复制并全选以编程方式启动文本视图的上下文操作栏?

  20. 20

    上下文操作栏不覆盖我的工具栏

  21. 21

    Android Webview:覆盖上下文操作栏

  22. 22

    嵌套上下文操作栏

  23. 23

    使用上下文操作栏在操作栏中共享项目

  24. 24

    更改上下文操作栏的颜色

  25. 25

    如何在上下文操作栏中使用ShareActionProvider共享多个文件?

  26. 26

    在特定视图中使用上下文操作栏时,无法解析方法startActionMode()

  27. 27

    如何使上下文操作栏出现在底部

  28. 28

    复制粘贴时隐藏应用程序/操作栏(上下文操作栏)

  29. 29

    上下文操作栏-在现有操作栏上方添加了操作栏(两个操作栏)

热门标签

归档