android長按彈出菜單
Ⅰ 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系統屏幕左邊有個小的拉出菜單要怎麼去掉
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開發中獲取選中文字以及彈出框
只需要在Textview中增加android:textIsSelectable="true"即可長按彈出復制,如果要彈出對話框,那就要用Dialog,dialog的用法如下:
Android中,在Dialog中增加EditText需要使用view控制項,也可參考附件源代碼。
具體實現代碼:
1.創建對象框
AlertDialog.Builder builder = new Builder(context);
builder.setTitle("請輸入"); //設置對話框標題
builder.setIcon(android.R.drawable.btn_star); //設置對話框標題前的圖標
2.創建EditText輸入框
final EditText edit = new EditText(context);
3.將輸入框賦值給Dialog,並增加確定取消按鍵
builder.setView(edit);
builder.setPositiveButton("確認", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(context, "你輸入的是: " + edit.getText().toString(), Toast.LENGTH_SHORT).show();
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(context, "你點了取消", Toast.LENGTH_SHORT).show();
}
});
4.設置常用api,並show彈出
builder.setCancelable(true); //設置按鈕是否可以按返回鍵取消,false則不可以取消
AlertDialog dialog = builder.create(); //創建對話框
dialog.setCanceledOnTouchOutside(true); //設置彈出框失去焦點是否隱藏,即點擊屏蔽其它地方是否隱藏
dialog.show();
Ⅳ android手機有哪些手勢操作,能具體點嗎
android手機有哪些手勢操作:
「點擊」,也叫「單擊」,即輕觸屏幕一下。無論是搭載何種操作系統的觸控手機,這個都是出現頻率最高的動作。點擊主要用來打開程序,還有功能表(抽屜)。
「點住」,也叫「長按」、「按住」,按住屏幕超過兩秒。此動作通常用來調出「菜單」。某些應用程序在界面空白處長按可以調出菜單;某些條目長按也可以彈出菜單,比如當您需要轉發簡訊時,在簡訊對話界面長按簡訊內容,必然會彈出菜單,菜單中通常會有「轉發」選項。
在進行文字編輯時,點住文字部分,然後調出遊標進行精準定位。
當然,此動作也可用於多選、快捷視圖,比如在「圖庫(相冊)」中,默認視圖下,長按相冊文件夾、可對文件夾進行多選操作;打開相冊文件夾後,長按照片,同樣可對照片進行多選操作,選擇完畢後可進行批量操作(發送、刪除)。
「拖動」,准確來說應該叫做「按住並拖動」。「拖動」主屏幕編輯時的常見動作,比如對桌面「小組件」或者「圖標」進行位置編輯時。另外也用於進度定位,比如播放音樂或者視頻時,需要常常拖動進度條。
「雙擊」就是短時間內連續雙擊屏幕兩次,主要用於快速縮放,比如瀏覽圖片時雙擊可以快速放大,再次雙擊可以復位;瀏覽網頁時,對文章正文部分雙擊可使文字自適應屏幕,當然某些視頻播放器雙擊可切換至全屏模式。
滑動,也算是一個常見操作。主要用於查看屏幕無法完全顯示的頁面,功能類似滑鼠的滾輪。此操作主要用於查看圖片、網頁、純文本(簡訊、郵件、筆記)。
某些視頻播放器還定義了特殊功能,比如亮度調節、快進快退,比如「MX Player」、「VPlayer」。
「縮放」動作,是查看圖片、網頁時最常見的操作,照相時也可使用縮放手勢來進行調焦。在MX Player中,甚至可以將視頻畫面進行縮放。
Ⅵ android 點擊按鈕時顯示菜單應怎樣實現
點擊button彈出對話框菜單
importandroid.app.Activity;
importandroid.app.AlertDialog;
importandroid.content.DialogInterface;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
{
privateButtonbutton;
/**.*/
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button=(Button)findViewById(R.id.button1);
button.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
newAlertDialog.Builder(choice.this)
.setTitle("choice")
.setItems(R.array.str_body,newDialogInterface.OnClickListener(){
@Override
publicvoidonClick(DialogInterfacearg0,intarg1){
//TODOAuto-generatedmethodstub
String[]aryshop=getResources().getStringArray(R.array.str_body);
newAlertDialog.Builder(choice.this)
.setMessage(aryshop[arg1])
.setNegativeButton("ok",newDialogInterface.OnClickListener(){
@Override
publicvoidonClick(DialogInterfacearg0,intarg1){
//TODOAuto-generatedmethodstub
}
}).show();
}
}).show();
//TODOAuto-generatedmethodstub
}});
}
}
菜單項
<?xmlversion="1.0"encoding="utf-8"?>
<resources>
<stringname="hello">HelloWorld,choice!</string>
<stringname="app_name">ChoiceMenu</string>
<stringname="strtitle">按我選擇:</string>
<stringname="str">你選擇的是:</string>
<arrayname="str_body">
<item>選項1</item>
<item>選項2</item>
<item>選項3</item>
<item>選項4</item>
<item>選項5</item>
<item>選項6</item>
</array>
</resources>