新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > android ContextMenu

        android ContextMenu

        作者: 時間:2016-09-12 來源:網絡 收藏

        ContextMenu 繼承自 Menu。上下文菜單不同于選項菜單,選項菜單服務于Activity,而上下文菜單是注冊到某個View對象上的。如果一個View對象注冊了上下文菜單,用戶可以通過長按(約2秒) 該View對象上以呼出上下文菜單。

        本文引用地址:http://www.104case.com/article/201609/305033.htm

        上下文菜單不支持快捷鍵(shortcut),其菜單選項也不能附帶圖標,但是可以為上下文菜單的標題指定圖標

        下面是一個ContextMenu的小例子,運行效果如下:

        androidwbr>ContextMenu
        androidwbr>ContextMenu

        package xiaohang.zhimeng;

        import android.app.Activity;

        import android.os.Bundle;

        import android.view.ContextMenu;

        import android.view.MenuItem;

        import android.view.View;

        import android.view.ContextMenu.ContextMenuInfo;

        import android.widget.EditText;

        public class Activity01 extends Activity {

        final int MENU1 = 1;

        final int MENU2 = 2;

        final int MENU3 = 3;

        final int MENU4 = 4;

        final int MENU5 = 5;

        @Override

        public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        //為兩個文本框注冊上下文菜單

        this.registerForContextMenu(findViewById(R.id.EditText01));

        this.registerForContextMenu(findViewById(R.id.EditText02));

        }

        //添加上下文菜單

        @Override

        public void onCreateContextMenu(ContextMenu menu, View v,

        ContextMenuInfo menuInfo) {

        //此方法在每次調用上下文菜單時都會被調用一次

        menu.setHeaderIcon(R.drawable.car);

        if (v==findViewById(R.id.EditText01)) {

        menu.add(0, MENU1, 0, R.string.mi1);

        menu.add(0, MENU2, 0, R.string.mi2);

        menu.add(0, MENU3, 0, R.string.mi3);

        }

        else if (v==findViewById(R.id.EditText02)) {

        menu.add(0, MENU4, 0, R.string.mi4);

        menu.add(0, MENU5, 0, R.string.mi5);

        }

        }

        //響應上下文菜單

        @Override

        public boolean onContextItemSelected(MenuItem item) {

        switch (item.getItemId()) {

        case MENU1:

        case MENU2:

        case MENU3:

        EditText et1 = (EditText)this.findViewById(R.id.EditText01);

        et1.append(n + item.getTitle() + 被按下);

        break;

        case MENU4:

        case MENU5:

        EditText et2 = (EditText)this.findViewById(R.id.EditText02);

        et2.append(n + item.getTitle() + 被按下);

        break;

        }

        return true;

        }

        }



        關鍵詞:

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 元氏县| 蒲江县| 和静县| 陆丰市| 仪征市| 临安市| 大方县| 蒲城县| 青海省| 都江堰市| 富平县| 马公市| 信阳市| 宜春市| 亳州市| 苏尼特左旗| 龙南县| 洪泽县| 平昌县| 绩溪县| 青海省| 京山县| 吉木乃县| 利川市| 红河县| 秦皇岛市| 海丰县| 阜康市| 靖安县| 大埔县| 文山县| 洛浦县| 山丹县| 中超| 青龙| 澄城县| 兴宁市| 资兴市| 宜兴市| 丹东市| 古浪县|