ContextMenu可以達到長按某個元件就會出現選單的效果
在res資料夾中新增menu的資料夾
Resource type選擇menu
在menu資料夾中新增menu.xml(menu resource file)
在menu.xml中新增item
例如:
android:id跟android:title是必要的值
android:orderInCategory為item的排序,值越大,排序就在越下面,如果沒有設定這個值,Menu的排序會依照程式碼的排序去排
例如:
1,要在onCreate裡中加上:registerForContextMenu()(註冊可以被長按的元件)
2,覆寫onCreateContextMenu方法(顯現Menu時呼叫)
加上getMenuInflater().inflate(R.menu.menu,menu);
inflate代表灌飽充滿,表示將剛剛建立的menu.xml充進去
3,覆寫onContextItemSelected方法(選項被點選時呼叫)
例如:
我設定當按下選項中的Exit選項後,要結束這個app,所以在onContextItemSelected中加上這個行為的程式碼
執行結果:
Step1 建立menu.xml
在res資料夾中新增menu的資料夾
Resource type選擇menu
在menu資料夾中新增menu.xml(menu resource file)
在menu.xml中新增item
例如:
android:id跟android:title是必要的值
android:orderInCategory為item的排序,值越大,排序就在越下面,如果沒有設定這個值,Menu的排序會依照程式碼的排序去排
Step2 在layout設定可以被長按的元件id
如果是要長按文字後會跳出Menu的話,就要設定TextView的id例如:
Step3 在Activity.java裡設定長按方法
1,要在onCreate裡中加上:registerForContextMenu()(註冊可以被長按的元件)
2,覆寫onCreateContextMenu方法(顯現Menu時呼叫)
加上getMenuInflater().inflate(R.menu.menu,menu);
inflate代表灌飽充滿,表示將剛剛建立的menu.xml充進去
3,覆寫onContextItemSelected方法(選項被點選時呼叫)
例如:
我設定當按下選項中的Exit選項後,要結束這個app,所以在onContextItemSelected中加上這個行為的程式碼
執行結果:
留言
張貼留言