android - 弹出菜单被剪裁且不完全可见
问题描述
我想显示一个固定在屏幕底部的弹出菜单,但它总是显示一个固定在屏幕右下角的弹出菜单。
有时,这会使弹出菜单在屏幕上显示时被剪裁。这是一个例子。
这是布局文件中的锚(item_menu):
<LinearLayout
android:id="@+id/item_menu"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:visibility="visible">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:translationX="4dp"
android:src="@drawable/ic_more_vert_black_18dp" />
</LinearLayout>
这是我设置 PopupMenu 并显示它的代码:
public ItemViewHolder(View itemView) {
super(itemView);
itemView.findViewById(R.id.item_menu).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View view) {
PopupMenu popupMenu = new PopupMenu(view.getContext(), view);
popupMenu.getMenuInflater().inflate(R.menu.hot_item, popupMenu.getMenu());
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem menuItem) {
Toast.makeText(view.getContext(), "menu clicked " + menuItem.getItemId(), Toast.LENGTH_LONG).show();
return true;
}
});
popupMenu.show();
}
});
}
解决方案
推荐阅读
- reactjs - 使用 Reactjs 的短信通知
- sql - 从表中查询以获取 JSON 结果
- javascript - Node + Express + Multer:上传一些元素为空的数组?
- vb.net - How to print a text file in Dot Matrix printer using chr values?
- python - 使用“If”语句检查 JSON 数据 webhook 响应
- javascript - 在 JavaScript Vanilla 中添加 2 个向量
- javascript - 创建函数来搜索整个表,而不仅仅是一列
- amazon-cognito - 有没有办法使用 Keycloak 联合 Cognito 用户池
- opengl - 双源混合与多渲染目标链接错误
- javascript - 一种形式的多个插入,用于 Laravel 中的一对多关系