问题标签 [contextual-action-bar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - onContextItemSelected 为片段调用了两次
我的应用程序有一个ListView
,我正在Contextual Action Bar
为 SDK 11 以上的设备使用一个,旧设备的旧弹出上下文操作。我知道有一种方法可以将 CAB 与旧设备一起使用,但我尝试实施它,发现对于最终将过时的设备来说,这是不值得的。我知道这是一些代码重复,但从理论上讲,我将摆脱旧的弹出操作(强调“理论上”)。
onContextItemSelected
无论如何,当我使用模拟器时,CAB 工作正常,但是当我在该事件中设置断点时,旧设备的旧弹出操作似乎会命中两次。我刚刚开始ViewPager
为我的应用程序实现一个,这在之前没有发生,ViewPager
所以不确定这是否是导致问题的原因。
这是我正在使用的代码:
ViewPager 代码
android - 如何在 ActionBarSherlock 中实现多选和上下文 ActionMode?
我应该如何使用 ActionBarSherlock 在 AdapterView 上实现多选,因为它不提供 MultiChoiceModeListener?
这就是它的样子
你怎么能做到这一点?
android - 使用 Maps API v2 信息窗口显示协调上下文操作栏
我想将上下文操作栏菜单的显示与来自 Google Maps API v2 的信息窗口同步。我遇到的主要问题是似乎没有办法可靠地监视信息窗口的状态,并且两个 UI 部分很容易不同步。
到目前为止,这大致是我所拥有的:
主要问题似乎是在显示信息窗口时单击标记本身时不会调用它onMarkerClick
;onMapClick
这种交互仍然足以关闭信息窗口......
如果有人有更可靠的方法来跟踪信息窗口的状态或监控那些丢失的点击事件,我会很高兴听到!
android - 在哪里处理与详细信息共同的列表项的 CAB 操作?
假设我有使用片段的主/细节模式,所以像往常一样,细节片段将在手机上的新活动中,而在平板电脑上,它也将在列表片段所在的前一个活动中。老东西。
我有一些操作要对细节执行,比如分享,这将是操作栏项目。老东西。
但是现在,我想实现 Contextual ActionBar 或对话框,在我看来这并不重要,这将允许直接从列表中共享。
我的问题是,我应该在哪里获得共享代码?我想避免重复。在我看来,它不能真的是一个回调,因为细节可以在双重活动内或在其单一活动内。我真的很困惑我应该怎么做。
希望你能明白。谢谢!
android - 以编程方式隐藏/显示上下文操作栏
我的用例:
我有一个以 a 作为其唯一视图元素的活动,为其三个页面ViewPager
设置了三个s(使用 a )。其中一个片段是,而另外两个常规s 包含一些信息图表。Fragment
FragmentPagerAdapter
ListFragment
Fragment
允许“检查”元素中的列表ListFragment
,检查元素会调出上下文操作栏,显示对选定/选中项目可能执行的操作列表。
我的问题:
当我选择几个列表项时,CAB 就会出现。但是当我切换页面时,CAB 保持可见,呈现操作。更糟糕的是,这ViewPager
似乎有时会破坏列表片段的视图 - 因此选择操作会引发"java.lang.IllegalStateException: Content view not yet created"
异常。
我的问题:
- 当用户离开
ListFragment
页面时,如何让 CAB 消失? ListFragment
(可选)当背面是并且某些项目仍然被检查时,我如何让 CAB 重新出现。
android - 带有列表视图的上下文操作栏,setselected 不起作用
我正在尝试制作一个上下文相关的ActionBar
. 我使用了 android devpage 中的示例,但我仍然没有让它工作。我在 onitemlongclick 上设置了一个事件监听器,但setSelected(true)
它似乎没有做任何事情。我知道该事件被触发,因为它actionmode
已打开,但它没有选择任何项目。
longclicklistener
是在 a 中fragment
,由 a在一个活动中持有,该viewpager
活动持有 的几个实例fragment
。我希望能够从页面中选择项目,然后对选择进行一些操作。
我当前的代码:
片段:
活动中的动作模式回调
android - 如何正确启动 ListFragment 的多选上下文操作栏(有问题)
我有一个ListFragment
与一个简单的ArrayAdapter
. ListView 包含一个可检查项的列表,其 XML 布局如下:
如您所见,我在 XML 布局中设置了long-clickable
和choicemode
属性。
ListFragment
我在的onViewCreated
回调中设置了适当的侦听器:
我作为侦听器参数传入,this
因为我ListFragment
还实现了这些侦听器的回调。
这是我遇到问题的回调:
首先,它onItemLongClick
永远不会被调用。但是,当长按列表项时,上下文操作栏 (CAB) 会启动并完美运行!
事实上,CAB没有这个回调就可以正常启动!我的回调使用activity.startActionMode(this)
,它会显示 CAB,但不利于检查列表中的项目(我在其他地方测试过)。
如何以编程方式正确处理长单击以启动 CAB 并促进检查列表项?
我正在使用Android 开发人员指南主题中提供的方法(他们使用了 onLongClickListener,我也尝试过但无济于事),但它似乎不起作用。
android - 覆盖Android中文本选择(在WebView中)的默认上下文操作栏
我想覆盖现有的默认上下文操作栏(CAB)以进行文本选择。我的意思是,当在 webview 上选择一些文本时,我想用我自己的按钮显示我自己的 CAB。我尝试使用 Android 文档实现 CAB。OnLongClickListener 不会捕获 Web 视图中的文本选择事件。捕获文本选择的事件是什么?是否可以隐藏默认 CAB 并在文本选择中显示我的 CAB?
android - 带有适配器的上下文操作栏
我第一次尝试使用上下文操作栏,但我遇到了这个设计问题:在我的主要活动中,我为我的列表设置了一个适配器:
现在我需要setOnLongClickListener
到每个列表项。我在哪里可以做到这一点,因为如果我在我的活动中编写它,我无法像在适配器中那样访问每个“视图”,但是如果我在适配器类中编写它,我将无权访问 ActionMode.Callback 或更重要的是 - 对我的逻辑方法,例如 - RemoveItem、ShareItem 等。
我想知道这样做的最佳做法是什么。
android - 带有 DialogFragment 的上下文操作栏
我一直在尝试实现一个上下文操作栏和一个对话框片段。类似于 android 中的下载小部件。
我试图android:windowActionModeOverlay
在主题中设置为真实。
但它似乎不起作用。有什么办法可以实现吗??