Android (ListActivity、Contextmenu)微信类消息置顶和删除和功能的实现
代码中继承ListActivity,自定义一个布局。 代码如下:
package com.example.ContextMenudemo2;import java.util.ArrayList;import android.app.ListActivity;import android.os.Bundle;import android.view.ContextMenu;import android.view.MenuItem;import android.view.View;import android.view.ContextMenu.ContextMenuInfo;import android.widget.AdapterView.AdapterContextMenuInfo;import android.widget.ArrayAdapter;import android.widget.ListView;import android.widget.Toast;public class MainActivity extends ListActivity {private ArrayAdapter adapter = null;private ArrayList<String> list = null;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);list = new ArrayList<String>();adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1,list);for(int i = 1;i<40;i++){list.add("微信消息测试"+i);}this.setListAdapter(adapter);ListView lv = this.getListView();lv.setOnCreateContextMenuListener(this);}@Overridepublic void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {menu.add(0, 1001, 1, "标记为未读");menu.add(0, 1002, 1, "置顶聊天");menu.add(0, 1003, 1, "删除该聊天");super.onCreateContextMenu(menu, v, menuInfo);}@Overridepublic boolean onContextItemSelected(MenuItem item) {AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();int pos = info.position;int id = item.getItemId();if(id==1003){list.remove(pos);adapter.notifyDataSetChanged();Toast.makeText(getApplicationContext(), "已删除", Toast.LENGTH_SHORT).show();}if(id==1002){String s = list.get(pos);list.remove(pos);list.add(0, s);adapter.notifyDataSetChanged();Toast.makeText(getApplicationContext(), "置顶成功", Toast.LENGTH_SHORT).show();}return super.onContextItemSelected(item);}}

结果图如下:

更多相关文章

  1. 为什么在AndroidManifest.xml中Activity的theme用不了Theme.Ligh
  2. Android中的Bundle类
  3. Android(安卓)library projects cannot be launched
  4. 在Android中把SQLite的数据库文件存储在SD卡中【转】
  5. Android(安卓)Kotlin开发模块之间跳转-ARouter
  6. Android(安卓)Bundle类
  7. Android百度地图一种简单实现多标注及响应时间的方法
  8. 如何为ListView设置分割线
  9. SQlite Android(安卓)数据库应用程序系统

随机推荐

  1. Android Studio更新升级方法
  2. 两分钟理解Android中PX、DP、SP的区别
  3. Android 网络协议
  4. Android CalendarView非常用属性全解析
  5. Android横竖屏切换小结
  6. android中的search dialog
  7. 跟我学Android NDK开发(一)
  8. android progressbar style定义解析
  9. android 设置支持pad等大屏幕、大分辨率
  10. Android开发——控件基础(三)EditText组件