如何在已设置的动作视图上打开子菜单?

时间:2019-06-26 06:53:14

标签: java android

我创建了一个菜单,该菜单使用TextView作为ActionView。 我很高兴使用真棒字体图标。 问题是,TextView不再传递事件。然后,我在onClick事件上手动调用onOptionsItemSelected函数。不幸的是,子菜单无法打开。我该怎么办才能打开子菜单?

这是一个通过Java和Android Studio创建的Android APP。使用的API版本是29。

public void release(final MenuItem item) {
    FontAwesomeTextView awesomeTextView = (FontAwesomeTextView) release();
    awesomeTextView.setPadding(15,0,15,0);
    item.setActionView(awesomeTextView);
    if (context instanceof Activity) {
        final Activity context = (Activity) this.context;
        awesomeTextView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                    context.onOptionsItemSelected(item);
            }
        });
    }
}

使用指定的函数设置ActionView,并在onCreateOptionsMenu中调用它。该函数是IconHelper类的一部分,该类在我的活动中用于使用图标。如前所述,无法打开子菜单。但是,如果没有ActionView,它会起作用。

0 个答案:

没有答案