gpt4 book ai didi

android - 在自定义 View 中显示 Action 的 Toast

转载 作者:行者123 更新时间:2023-11-29 01:54:44 25 4
gpt4 key购买 nike

我需要创建自定义 View 以在 Sherlock ActionBar 中设置额外的 Action。这是 XML:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right"
android:orientation="horizontal" >

<ImageButton
android:id="@+id/edit"
style="@style/Widget.Sherlock.ActionButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_edit" />

</LinearLayout>

代码如下:

LayoutParams lp = new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT, Gravity.RIGHT
| Gravity.CENTER_VERTICAL);

ActionBar actionbar = getSherlockActivity().getSupportActionBar();

actionbar.setCustomView(getSherlockActivity().getLayoutInflater()
.inflate(R.layout.top_sample_detail, null), lp);
actionbar.setDisplayOptions(ActionBar.DISPLAY_HOME_AS_UP
| ActionBar.DISPLAY_SHOW_HOME | ActionBar.DISPLAY_SHOW_CUSTOM
| ActionBar.DISPLAY_SHOW_TITLE);

我可以通过定位 actionbar.getCustomView().findViewById(R.id.edit) 轻松找到 edit 按钮,但这不是问题所在。我想知道是否有默认的自动方式在长按后在 Toast 中显示按钮的名称,就像在非自定义 View 中是 Action 时一样。

tl;dr

总结一下:是否有一个属性/方法/属性可以设置为 ImageButton,使其表现为一个 Action 项并显示一个 Toast 长按后,就像操作项一样吗?

最佳答案

我遇到了类似的问题(here's 关于它的帖子),我想到了 2 种可能的解决方案:

  1. 以某种方式扩展 ActionMenuItemView,并使其布局包含所需内容,但禁止显示 View 。添加你自己的布局到它的布局。这是一个相当困惑的解决方案。

  2. 在操作项的 View 上使用 setOnLongClickListener,并调用为 ActionMenuItemView::onLongClick 调用的相同代码。这实际上是我在我创建的帖子 (here) 上写的内容

关于android - 在自定义 View 中显示 Action 的 Toast,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15857992/

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