【发布时间】:2015-11-16 15:38:26
【问题描述】:
我在基于 Android cocos2d-x 的游戏中添加了一个 EditText。
“选择剪切复制粘贴”操作栏将我的编辑框向下推。
而我想要的是这样的:
这是我设置编辑框位置的代码:
public void setEditBoxViewRect(int left, int top, int maxWidth, int maxHeight) {
FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.WRAP_CONTENT,
FrameLayout.LayoutParams.WRAP_CONTENT);
layoutParams.leftMargin = left;
layoutParams.topMargin = top;
layoutParams.width = maxWidth;
layoutParams.height = maxHeight;
layoutParams.gravity = Gravity.TOP | Gravity.LEFT;
this.setLayoutParams(layoutParams);
}
我认为问题在于我自定义了 EditText 布局。当操作栏显示时,我没有响应相关事件来调整我的 EditText 位置。
我可以监听菜单栏显示的事件并获得正确的高度来调整我的 EditText 吗?
我试过这段代码,但它只是禁用了操作栏:
edittext.setCustomSelectionActionModeCallback(new ActionMode.Callback() {
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
return false;
}
public void onDestroyActionMode(ActionMode mode) {
}
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
return false;
}
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
return false;
}
});
【问题讨论】:
标签: android layout android-actionbar android-edittext