当前位置:首页 » 安卓系统 » android长按菜单

android长按菜单

发布时间: 2023-12-04 20:38:34

‘壹’ Android系统屏幕左边有个小的拉出菜单要怎么去掉

1、点击图标,看看是哪个软件的快捷组件。

2、打开软件的设置,取消桌面或其它界面显示就OK。

另外,也可以通过权限设置,禁止软件显示通知等等,禁止这一类的组件和任务栏显示。

比如使用LBE安全大师,打开安全和隐私,打开权限设置,禁止广告和任务栏显示就可以禁止出现。

‘贰’ Android 仿微信长按列表弹出PopupMenu菜单栏

弹出效果如下图所示

可以使用setGravity()方法来指定弹出窗口与anchor视图的对齐方式,例如修改对齐方式为Gravity.END

使用起来还是比较简单的,但是好像大部分项目的需求是PopupMenu在用户点击的位置弹出,然而PopupMenu并没有提供在指定坐标弹出的方法,所以只能咱们自己来实现咯!

想让PopupMenu在指定弹出位置,首先咱们得先了解show()方法是如何让PopupMenu弹出来的,所以只能去阅读源码了(Read The Fucking Source Code~)。

PopupMenu的show()方法很简单,直接把任务转给MenuPopupHelper来处理,处理流程:show() -> tryShow() -> showPopup(0, 0, false, false);

我们可以看到showPopup方法内有两个参数int xOffset、int yOffset,根据注释可以知道这就是相对于anchor视图的坐标值。所以如果要指定PopupMenu的弹出位置,MenuPopupHelper应该这样处理弹出逻辑:show(int x, int y) -> tryShow(int x, int y) -> showPopup(x, y, true, true)。

但是由于PopupMenu无法调用到MenuPopupHelper的show(int x, int y) 方法,因此我们只能使用反射机制绕过PopupMenu,直接调用MenuPopupHelper的show(int x, int y)方法。

到此为止,已经有了大致的解决思路,接下来看看具体实现。

最终弹出效果如下图所示

‘叁’ Android的EditText长按只显示上面的复制粘贴菜单,不要弹出下面的输入法键盘怎么做

4.0以上的API禁止EditText弹出键盘需要这样写:

4.0的是setShowSoftInputOnFocus,4.2的是setSoftInputOnFocus。

java">EditTexteditText;
//editText的实例化我不写了
InputMethodManagerimm=(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(e1.getWindowToken(),0);
try{
Class<EditText>cls=EditText.class;
setSoftInputShownOnFocus=cls.getMethod("setShowSoftInputOnFocus",boolean.class);
setSoftInputShownOnFocus.setAccessible(true);
setSoftInputShownOnFocus.invoke(editText,false);
}catch(Exceptione){
e.printStackTrace();
}

并且还要在配置文件里面加上android:windowSoftInputMode="stateHidden"

4.0以下的可用editText.setInputType(InputType.TYPE_NULL);

或者直接在XML进行属性设置。

如果对4.0以上系统的操作这句代码,EditText将会没有光标。

‘肆’ Android 键盘快捷键有哪些

安卓(Android)x86常用键盘快捷键:
Alt-F1
=
进入
console
模式
Alt-F7
=
回到
GUI
模式
Alt-F9
=
图形界面
Alt-F10
=
画面旋转
180

Alt-F10
=
画面旋转
180

Alt-F11
=
画面向左旋转
90

Alt-F12
=
画面向右旋转
90

Ctrl-P
=
开启Android设定画面
"Windows
键"相当于
Android

Home
按钮。
"Esc"
相当于
Android

Back
按钮
F2
相当于
Android

Menu
按钮
F3
相当于
Android

Search
按钮
右边的菜单键(win和ctrl中间的键)
=
Android菜单键
返回键:鼠标右键/Esc键
menu键:鼠标滚轮
关机键:End键/F4键(2.2是短按。2/3好像是长按)
返回主界面:Home键/Windows键
中英文切换:Space+Shifta

‘伍’ android如何长按跳出菜单,怎么才能不用onclick方法直接用onlongclick

之前做按钮的点击事件一直没有注意一些细节,今天做了一个按钮需要有点击和长点击触发不同效果,直接让Activity implements OnClickListener, OnLongClickListener然后添加了相应的处理函数。
@Override
public void onClick(View v) {
// TODO Auto-generated method stub

}

@Override
public boolean onLongClick(View v) {
// TODO Auto-generated method stub
return false;
}

没多做考虑,直接在函数内添加了我想要的实现。在一次不经意的测试中发现,在我的按钮点击时间中有一个临界值,当我单下按钮的时间等于这个临界值的时候,点击事件和长点击事件会同时触发。点击事件自然是没什么问题,导致这个问题一定是长点击事件出了问题,回过头仔细看长点击事件的方法,发现它和点击事件基本没有区别,唯一的区别就是多了一个返回值。那么这个返回值究竟有什么用呢,查了一下开发文档,对这个方法描述如下:
Public Methods
public abstract boolean onLongClick ( View v)
Added in API level 1
Called when a view has been clicked and held.
Parameters

v
The view that was clicked and held.

Returns
true if the callback consumed the long click, false otherwise.
说明了如果返回值为true的话这个点击事件会被长点击独占,否则相反。
这下就可以理解了为什么之前的点击会同时触发两个点击事件。
将onLongClick的返回值设置为true,即可避免这个问题的发生。

热点内容
ios应用上传 发布:2024-09-08 09:39:41 浏览:439
ios储存密码哪里看 发布:2024-09-08 09:30:02 浏览:871
opensslcmake编译 发布:2024-09-08 09:08:48 浏览:653
linux下ntp服务器搭建 发布:2024-09-08 08:26:46 浏览:744
db2新建数据库 发布:2024-09-08 08:10:19 浏览:173
频率计源码 发布:2024-09-08 07:40:26 浏览:780
奥迪a6哪个配置带后排加热 发布:2024-09-08 07:06:32 浏览:101
linux修改apache端口 发布:2024-09-08 07:05:49 浏览:209
有多少个不同的密码子 发布:2024-09-08 07:00:46 浏览:566
linux搭建mysql服务器配置 发布:2024-09-08 06:50:02 浏览:995