【邊做項目邊學Android】手機安全衛士05_2:程式主介面,為每個條目添加事件

來源:互聯網
上載者:User

標籤:android   事件   

為每個條目添加點擊事件監聽器

gv_main.setOnItemClickListener(this);

需要當前Activity實現OnItemClickListener介面,同時實現public void onItemClick(AdapterView<?> parent, View view, int position,long id)方法

/**     * 當gridview的條目被點擊的時候對應的回調     * parent : gridView     * view : 當前被點擊條目的 LinearLayout     * position : 點擊條目對應的位置     * id : 代表的行號     */    @Override    public void onItemClick(AdapterView<?> parent, View view, int position,            long id) {        Log.i(TAG, "點擊的位置" + position);        switch(position){        case 0 :            Log.i(TAG, "進入手機防盜");            break;        }    }


設定長按“手機防盜”時,彈出編輯視窗(知識點:SharedPreferences)
gv_main.setOnItemLongClickListener(new OnItemLongClickListener() {            @Override            public boolean onItemLongClick(AdapterView<?> parent, final View view,                    int position, long id) {                if(position == 0){                    Builder builder = new Builder(MainActivity.this);                    builder.setTitle("設定");                    builder.setMessage("請輸入要更改的內容");                                       final EditText et = new EditText(MainActivity.this);                    et.setHint("請輸入內容,長度在0-8之間");                    builder.setView(et);                                       builder.setPositiveButton("確定", new OnClickListener() {                                               @Override                        public void onClick(DialogInterface dialog, int which) {                            String name = et.getText().toString();//擷取輸入                            if("".equals(name)){                                Toast.makeText(getApplicationContext(), "內容不可為空", Toast.LENGTH_LONG).show();                                return;                            }else if(name.length() > 8){                                Toast.makeText(getApplicationContext(), "輸入過長", Toast.LENGTH_LONG).show();                                return;                            }else{                                Editor editor = sp.edit();                                editor.putString("lost_name", name);                                // 完成資料的提交                                editor.commit();                                TextView tv = (TextView) view.findViewById(R.id.tv_main_name);                                tv.setText(name);                            }                        }                    });                                       builder.setNegativeButton("取消", new OnClickListener() {                                               @Override                        public void onClick(DialogInterface dialog, int which) {                        }                    });                                       builder.create().show();                }                return false;            }                   });           }


長按後彈出介面效果及設定後的效果:

    

【邊做項目邊學Android】手機安全衛士05_2:程式主介面,為每個條目添加事件

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.