編輯:關於android開發
1 package com.lixu.menu2; 2 3 import java.util.ArrayList; 4 5 import android.app.Activity; 6 import android.os.Bundle; 7 import android.view.ContextMenu; 8 import android.view.Menu; 9 import android.view.MenuItem; 10 import android.view.View; 11 import android.view.ContextMenu.ContextMenuInfo; 12 import android.widget.AdapterView.AdapterContextMenuInfo; 13 import android.widget.ArrayAdapter; 14 import android.widget.ListView; 15 import android.widget.Toast; 16 17 public class MainActivity extends Activity { 18 private ArrayList<String> data; 19 private ArrayAdapter<String> mAdapter; 20 21 @Override 22 protected void onCreate(Bundle savedInstanceState) { 23 super.onCreate(savedInstanceState); 24 setContentView(R.layout.activity_main); 25 26 data = new ArrayList<String>(); 27 for (int i = 0; i < 20; i++) 28 data.add("大神" + i); 29 30 ListView lv = (ListView) findViewById(R.id.listview); 31 mAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, data); 32 33 lv.setAdapter(mAdapter); 34 lv.setOnCreateContextMenuListener(this); 35 } 36 37 @Override 38 public boolean onCreateOptionsMenu(Menu menu) { 39 getMenuInflater().inflate(R.menu.main, menu); 40 return true; 41 } 42 43 @Override 44 public boolean onContextItemSelected(MenuItem item) { 45 AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); 46 int pos = info.position; 47 switch (item.getItemId()) { 48 case 1001: 49 Toast.makeText(this, "親,這條消息未讀哦!", 0).show(); 50 break; 51 case 1002: 52 53 String s = data.get(pos); 54 data.remove(pos); 55 data.add(0, s); 56 57 mAdapter.notifyDataSetChanged(); 58 59 Toast.makeText(this, "聊天置頂!", 0).show(); 60 break; 61 case 1003: 62 63 data.remove(pos); 64 mAdapter.notifyDataSetChanged(); 65 66 Toast.makeText(this, "已刪除!", 0).show(); 67 break; 68 69 default: 70 break; 71 72 } 73 return super.onContextItemSelected(item); 74 } 75 76 @Override 77 public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { 78 super.onCreateContextMenu(menu, v, menuInfo); 79 menu.add(0, 1001, 101, "標記為未讀"); 80 menu.add(0, 1002, 102, "置頂聊天"); 81 menu.add(0, 1003, 103, "刪除該聊天"); 82 } 83 84 @Override 85 public boolean onOptionsItemSelected(MenuItem item) { 86 int id = item.getItemId(); 87 switch (id) { 88 case R.id.action_settings: 89 Toast.makeText(this, "親,想設置什麼?", 0).show(); 90 break; 91 case R.id.action_about: 92 Toast.makeText(this, "親,想看什麼?", 0).show(); 93 break; 94 case R.id.action_open: 95 Toast.makeText(this, "親,我幫你打開?", 0).show(); 96 break; 97 case R.id.action_file: 98 Toast.makeText(this, "親,你懂的。", 0).show(); 99 break; 100 101 default: 102 break; 103 } 104 return super.onOptionsItemSelected(item); 105 } 106 }
運行效果圖:
Android Design Support Library——Snackbar,androidsnackbar Snackbar是一個輕量級控件,它可以很方便的提供消
Android基礎入門教程——8.3.16 Canvas API詳解(Part 1) Android基礎入門教程——8.3.16 Canvas A
Android音頻開發(5):音頻數據的編解碼 前面四篇文章分別介紹了音頻開發必備的基礎知識、如何采集一幀音頻、如何播放一幀音頻、如何存儲和解析wav格式的文件,建議有興
H5調用Android播放視頻,h5調用androidwebView.loadUrl(http://10.0.2.2:8080/assets/RealNetJSCallJ