gpt4 book ai didi

android - 识别在上下文菜单中选择的 View (Android)

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:54:38 25 4
gpt4 key购买 nike

在 Android 中,onContextItemSelected 有一个单独的 MenuItem 参数,因此不清楚如何识别所选 View 。 MenuItem.getMenuInfo提供对 Contextmenu.ContextMenuInfo 的访问,但是虽然两个已知的子类都提供了对目标 View 的访问,但接口(interface)上似乎没有访问器。

一种替代方法是将 onCreateContextMenu 中提供的 View 保存在一个私有(private)类变量中,该变量依赖于 onCreateContextMenu 不会在 Activity 中再次调用在 onContextItemSelected 之前。另一种方法是使用 View 的 id 作为 ContextMenu.additemId 参数。 .如果我们这样做,那么我们将需要使用其(可能是国际化的)标题来识别从上下文菜单中选择的选项。

识别在 onContextSelected 中选择的 View 的最佳方法是什么?

最佳答案

Android 中的选项菜单或上下文菜单都没有“识别所选 View ”这样的概念。因此,很难回答你的问题。所以,我会做一些猜测。

如果“识别所选 View ”是指选择了哪个菜单选项,即传递给 onOptionsItemSelected( )onContextItemSelected()

如果“识别所选 View ”是指 ListView 中的哪一行是长按以调出上下文菜单的行,则转换 getMenuInfo() (在 MenuItem 上调用)到 AdapterView.AdapterContextMenuInfo,然后根据需要使用 idposition 值基于您的适配器。 See here for a sample project使用这种技术。

如果“识别所选 View ”意味着您在一个 Activity 中有多个非 ListView 上下文菜单,我不会使用该 UI 技术。

关于android - 识别在上下文菜单中选择的 View (Android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2926293/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com