Browse Source

消息界面放出来

FANGLH 9 years ago
parent
commit
1be03e690a

+ 55 - 22
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/MainActivity.java

@@ -20,6 +20,8 @@ import android.support.v4.app.FragmentManager;
 import android.support.v4.app.FragmentTransaction;
 import android.util.Log;
 import android.view.KeyEvent;
+import android.view.Menu;
+import android.view.MenuItem;
 import android.view.View;
 import android.widget.TextView;
 import android.widget.Toast;
@@ -53,7 +55,7 @@ import com.xzjmyk.pm.activity.ui.find.MyFriendFragment;
 import com.xzjmyk.pm.activity.ui.groupchat.GroupChatFragment;
 import com.xzjmyk.pm.activity.ui.me.MeFragment;
 import com.xzjmyk.pm.activity.ui.me.ScreenListener;
-import com.xzjmyk.pm.activity.ui.message.MessageFragment;
+import com.xzjmyk.pm.activity.ui.message.uas.NewMessageFragment;
 import com.xzjmyk.pm.activity.util.Constants;
 import com.xzjmyk.pm.activity.util.PreferenceUtils;
 import com.xzjmyk.pm.activity.view.DivideRadioGroup;
@@ -111,7 +113,8 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
      * @注释:主界面Fragment
      */
     private Fragment mLastFragment;
-    private MessageFragment mMessageFragment;
+    //    private MessageFragment mMessageFragment;
+    private NewMessageFragment mNewMessageFragment;
     private MyFriendFragment mMyFriendFragment;//我的朋友---相互关注,单项关注,房间
     private WorksFragment mWorksFragment;//工作
     private GroupChatFragment mGroupChatFragment;//群聊
@@ -119,14 +122,13 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
     private ContactFragment mBusinessCircleFragment;
     public static String BAIDU_PUSH = "BAIDUPUSH";
     public static String UU_STEP = "UUSTEP";
+    public static String NEW_FUNCTION_NOTICE = "NEW_FUNCTION_NOTICE";
     private boolean mXmppBind;
     private CoreService mCoreService;
     private boolean isPause = true;// 界面是否暂停
     private ScreenListener screenListener;//锁屏开屏监听
     private int mRetryCheckDelay = 0;
     public static int UPDATA_LIST = 101;
-    public static String NEW_FUNCTION_NOTICE = "NEW_FUNCTION_NOTICE";
-    private TextView main_tab_three_tv;
     private Handler mUserCheckHander = new Handler() {
         public void handleMessage(Message msg) {
             if (msg.what == MSG_USER_CHECK) {
@@ -139,6 +141,7 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
         }
     };
     private int mImStatus = AuthStateListener.AUTH_STATE_NOT;
+    private TextView main_tab_three_tv;
 
     public int getmImStatus() {
         return mImStatus;
@@ -185,10 +188,15 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
         @Override
         public void onCheckedChanged(DivideRadioGroup group, int checkedId) {
             if (checkedId == R.id.main_tab_one) {
-                if (mMessageFragment == null) {
-                    mMessageFragment = new MessageFragment();
+//                if (mMessageFragment == null) {
+//                    mMessageFragment = new MessageFragment();
+//                }
+//                mMessageFragment.setOnRefreshRedUI(new MessageFragment.OnRefreshUIListener() {
+
+                if (mNewMessageFragment == null) {
+                    mNewMessageFragment = new NewMessageFragment();
                 }
-                mMessageFragment.setOnRefreshRedUI(new MessageFragment.OnRefreshUIListener() {
+                mNewMessageFragment.setOnRefreshRedUI(new NewMessageFragment.OnRefreshUIListener() {
                     @Override
                     public void updata(int num) {
                         //当首页有更新,mainactivity跟着更新页面
@@ -198,7 +206,8 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
                         updateMsgUnReadTv();
                     }
                 });
-                changeFragment(mMessageFragment, TAG_MESSAGE);//消息
+//                changeFragment(mMessageFragment, TAG_MESSAGE);//消息
+                changeFragment(mNewMessageFragment, TAG_MESSAGE);
                 updateMessageTitle();
             } else if (checkedId == R.id.main_tab_two) {
                 if (mBusinessCircleFragment == null) {
@@ -416,13 +425,8 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
         if (isPush == 0) {
             PushManager.stopWork(this);
         }
-        // TODO 判断上一个状态UU运动是否预关闭
-        int isUUStep = PreferenceUtils.getInt(MyApplication.getInstance(), MainActivity.UU_STEP);
-        if (isUUStep == 1) {
-            startService(new Intent(mContext, StepService.class));
-            PreferenceUtils.putInt(MyPedometerActivity.UU_STEP_NOTICE, 1);
-            PushManager.resumeWork(MyApplication.getInstance());
-        }
+
+        doUUStepEvent();
         //TODO 发布版本关闭
         if (AppConfig.COMPANY) {
 //            startService(new Intent(this, AlarmService.class));
@@ -501,10 +505,32 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
 //        }
 //        dbManager.closeDB();
 
+    }
 
+    private void doUUStepEvent() {
         //开启APP后自动开启UU运动服务,这里为了耗电占内存等情况暂时不设置开启APP自动开启UU运动
 //        openUUStepService();
 
+        //  判断上一个状态UU运动是否预关闭
+        int isUUStep = PreferenceUtils.getInt(MyApplication.getInstance(), MainActivity.UU_STEP);
+        if (isUUStep == 1) {
+            startService(new Intent(mContext, StepService.class));
+            PreferenceUtils.putInt(MyPedometerActivity.UU_STEP_NOTICE, 1);
+            PushManager.resumeWork(MyApplication.getInstance());
+        }
+    }
+
+    @Override
+    public boolean onCreateOptionsMenu(Menu menu) {
+        return super.onCreateOptionsMenu(menu);
+    }
+
+    @Override
+    public boolean onOptionsItemSelected(MenuItem item) {
+        switch (item.getItemId()){
+//            case android.R.id
+        }
+        return super.onOptionsItemSelected(item);
     }
 
     private Messenger messenger;
@@ -583,8 +609,11 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
     /* 当注销当前用户时,将那些需要当前用户的Fragment销毁,以后重新登陆后,重新加载为初始状态 */
     private void removeNeedUserFragment(boolean startAgain) {
         FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();// 开始事物
-        if (mMessageFragment != null) {
-            fragmentTransaction.remove(mMessageFragment);
+//        if (mMessageFragment != null) {
+//            fragmentTransaction.remove(mMessageFragment);
+//        }
+        if (mNewMessageFragment != null){
+            fragmentTransaction.remove(mNewMessageFragment);
         }
         if (mMyFriendFragment != null) {
             fragmentTransaction.remove(mMyFriendFragment);
@@ -603,7 +632,8 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
 
         }
         fragmentTransaction.commitAllowingStateLoss();
-        mMessageFragment = null;
+//        mMessageFragment = null;
+        mNewMessageFragment = null;
         mMyFriendFragment = null;
         mWorksFragment = null;
         mGroupChatFragment = null;
@@ -656,7 +686,8 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
 
     private void restoreState(Bundle savedInstanceState) {
         mLastFragment = getSupportFragmentManager().findFragmentById(R.id.main_content);
-        mMessageFragment = (MessageFragment) getSupportFragmentManager().findFragmentByTag(TAG_MESSAGE);
+//        mMessageFragment = (MessageFragment) getSupportFragmentManager().findFragmentByTag(TAG_MESSAGE);
+        mNewMessageFragment = (NewMessageFragment) getSupportFragmentManager().findFragmentByTag(TAG_MESSAGE);
         mMyFriendFragment = (MyFriendFragment) getSupportFragmentManager().findFragmentByTag(TAG_MY);
         mWorksFragment = (WorksFragment) getSupportFragmentManager().findFragmentByTag(TAG_NEARBY);
         mGroupChatFragment = (GroupChatFragment) getSupportFragmentManager().findFragmentByTag(TAG_GROUP_CHAT);
@@ -677,11 +708,10 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
         }
         mMsgUnReadTv = (TextView) findViewById(R.id.main_tab_one_tv);
         unWorkReadTV = (TextView) findViewById(R.id.main_tab_five_tv);
+
         main_tab_three_tv = (TextView) findViewById(R.id.main_tab_three_tv);
 
-        //TODO 当前隐藏性功能提醒红点
-        PreferenceUtils.putInt(MainActivity.NEW_FUNCTION_NOTICE, 1);
-        PushManager.resumeWork(MyApplication.getInstance());
+
         int new_function_notice = PreferenceUtils.getInt(MyApplication.getInstance(),MainActivity.NEW_FUNCTION_NOTICE);
         if(new_function_notice == 1){
             main_tab_three_tv.setVisibility(View.INVISIBLE);
@@ -691,6 +721,7 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
         Log.i("new_function_notice",new_function_notice +"");
     }
 
+
     private void changeFragment(Fragment addFragment, String tag) {
         FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();// 开始事物
         if (mLastFragment == addFragment) {
@@ -767,6 +798,7 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
         requestMyBusiness();
         Runtime.getRuntime().gc();
 
+
         int new_function_notice = PreferenceUtils.getInt(MyApplication.getInstance(),MainActivity.NEW_FUNCTION_NOTICE);
         if(new_function_notice == 1){
             main_tab_three_tv.setVisibility(View.INVISIBLE);
@@ -825,4 +857,5 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
         return (BusinessCircleFragment) sfmanager.findFragmentByTag(TAG_BusinessCircle);
     }
 
+
 }

+ 211 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/MsgsSecondCommonActivity.java

@@ -0,0 +1,211 @@
+package com.xzjmyk.pm.activity.ui.erp.activity.oa;
+
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.AdapterView;
+import android.widget.BaseAdapter;
+import android.widget.ImageView;
+import android.widget.LinearLayout;
+import android.widget.ListView;
+import android.widget.PopupWindow;
+import android.widget.TextView;
+
+import com.handmark.pulltorefresh.library.PullToRefreshBase;
+import com.handmark.pulltorefresh.library.PullToRefreshListView;
+import com.lidroid.xutils.ViewUtils;
+import com.lidroid.xutils.view.annotation.ViewInject;
+import com.xzjmyk.pm.activity.R;
+import com.xzjmyk.pm.activity.ui.base.BaseActivity;
+import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
+import com.xzjmyk.pm.activity.ui.erp.view.EmptyLayout;
+import com.xzjmyk.pm.activity.util.DisplayUtil;
+
+/**
+ * Created by FANGlh on 2017/2/24.
+ * function: 消息第二层 通用界面
+ */
+public class MsgsSecondCommonActivity extends BaseActivity implements View.OnClickListener{
+    @ViewInject(R.id.waitting_work_plv)
+    private PullToRefreshListView myplv;
+    private String msg_title = "";
+    private NewMsgAdapter msgAdapter;
+    private PopupWindow setWindow = null;
+    private int mPosition;
+    private EmptyLayout mEmptyLayout;
+    private Handler mhandler = new Handler(){
+        @Override
+        public void handleMessage(Message msg) {
+            super.handleMessage(msg);
+            switch (msg.what){
+
+                default:
+                    if (msg.getData() != null) {
+                        if (!StringUtils.isEmpty(msg.getData().getString("result"))) {
+                            ToastMessage(msg.getData().getString("result"));
+                        }
+                    }
+                    break;
+            }
+        }
+    };
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.waitting_works);
+        getSupportActionBar().setTitle(msg_title);
+        ViewUtils.inject(this);
+        initView();
+        NewMsgsEvent();
+    }
+
+    private void initView() {
+        mEmptyLayout = new EmptyLayout(this, myplv.getRefreshableView());
+        mEmptyLayout.setShowEmptyButton(false);
+        mEmptyLayout.setShowErrorButton(false);
+        mEmptyLayout.setShowLoadingButton(false);
+        myplv.setMode(PullToRefreshBase.Mode.BOTH);
+
+        msgAdapter = new NewMsgAdapter();
+        myplv.getRefreshableView().setAdapter(msgAdapter);
+    }
+
+    private void NewMsgsEvent() {
+
+        myplv.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
+            @Override
+            public void onPullDownToRefresh(PullToRefreshBase refreshView) { //TODO 下拉刷新
+                new Handler().postDelayed(new Runnable() {
+                    @Override
+                    public void run() {
+                        myplv.onRefreshComplete();
+                    }
+                },3000);
+            }
+
+            @Override
+            public void onPullUpToRefresh(PullToRefreshBase refreshView) { //TODO 上拉加载
+                new Handler().postDelayed(new Runnable() {
+                    @Override
+                    public void run() {
+                        myplv.onRefreshComplete();
+                    }
+                }, 3000);
+            }
+        });
+        myplv.getRefreshableView().setOnItemClickListener(new AdapterView.OnItemClickListener() {
+            @Override
+            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
+                mPosition = (int) parent.getItemIdAtPosition(position);
+                ToastMessage("点击position = " + mPosition);
+            }
+        });
+
+        myplv.getRefreshableView().setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
+            @Override
+            public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
+                mPosition = (int) parent.getItemIdAtPosition(position);
+                ToastMessage("长按position = " + mPosition);
+                showPopupWindow();
+                return true;
+            }
+        });
+    }
+
+    private void showPopupWindow() {
+        if (setWindow == null) initPopupWindow();
+        setWindow.showAtLocation(getWindow().getDecorView(), Gravity.CENTER, 0, 0);
+        DisplayUtil.backgroundAlpha(this, 0.4f);
+    }
+
+    private void initPopupWindow() {
+        View viewContext = LayoutInflater.from(mContext).inflate(R.layout.msgs_long_click,null);
+        viewContext.findViewById(R.id.delete_tv).setOnClickListener(this);
+        viewContext.findViewById(R.id.markread_tv).setOnClickListener(this);
+        setWindow = new PopupWindow(viewContext,
+                LinearLayout.LayoutParams.MATCH_PARENT,
+                LinearLayout.LayoutParams.WRAP_CONTENT, true);
+        setWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
+            @Override
+            public void onDismiss() {
+                closePopupWindow();
+            }
+        });
+    }
+    private void closePopupWindow() {
+        if (setWindow != null)
+            setWindow.dismiss();
+        DisplayUtil.backgroundAlpha(this, 1f);
+    }
+    @Override
+    public void onClick(View v) {
+        switch (v.getId()){
+            case R.id.delete_tv:
+                doDeleteMsg();     //TODO 删除操作
+                closePopupWindow();
+                break;
+            case R.id.markread_tv:
+                doMarkReadMsg();   // TODO 标为已读
+                closePopupWindow();
+                break;
+        }
+    }
+
+    private void doMarkReadMsg() {
+
+    }
+
+    private void doDeleteMsg() {
+
+    }
+
+    //TODO 列表适配器
+    public  class NewMsgAdapter extends BaseAdapter {
+
+        @Override
+        public int getCount() {
+            return 50;
+        }
+
+        @Override
+        public Object getItem(int position) {
+            return null;
+        }
+
+        @Override
+        public long getItemId(int position) {
+            return position;
+        }
+
+        @Override
+        public View getView(int position, View convertView, ViewGroup parent) {
+            ViewHolder viewHolder;
+            if (convertView == null){
+                convertView = View.inflate(ct,R.layout.item_newmsgs,null);
+                viewHolder = new ViewHolder();
+                viewHolder.msgs_img = (ImageView) convertView.findViewById(R.id.msgs_img);
+                viewHolder.msgs_nums_tv = (TextView) convertView.findViewById(R.id.msgs_nums_tv);
+                viewHolder.msgs_title_tv = (TextView) convertView.findViewById(R.id.msgs_time_tv);
+                viewHolder.msgs_content_tv = (TextView) convertView.findViewById(R.id.msgs_content_tv);
+                viewHolder.msgs_time_tv = (TextView) convertView.findViewById(R.id.msgs_time_tv);
+                convertView.setTag(viewHolder);
+            }else {
+                viewHolder = (ViewHolder) convertView.getTag();
+            }
+            return convertView;
+        }
+
+        class ViewHolder {
+            ImageView msgs_img;
+            TextView msgs_nums_tv;
+            TextView msgs_title_tv;
+            TextView msgs_content_tv;
+            TextView msgs_time_tv;
+        }
+    }
+}

+ 112 - 5
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/WaittingWorksActivity.java

@@ -1,28 +1,58 @@
 package com.xzjmyk.pm.activity.ui.erp.activity.oa;
 
 import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
+import android.view.Gravity;
+import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.AdapterView;
 import android.widget.BaseAdapter;
 import android.widget.ImageView;
+import android.widget.LinearLayout;
+import android.widget.ListView;
+import android.widget.PopupWindow;
 import android.widget.TextView;
 
+import com.handmark.pulltorefresh.library.PullToRefreshBase;
 import com.handmark.pulltorefresh.library.PullToRefreshListView;
 import com.lidroid.xutils.ViewUtils;
 import com.lidroid.xutils.view.annotation.ViewInject;
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.ui.base.BaseActivity;
+import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
+import com.xzjmyk.pm.activity.ui.erp.view.EmptyLayout;
+import com.xzjmyk.pm.activity.util.DisplayUtil;
 
 /**
  * Created by FANGlh on 2017/2/24.
  * function:待办工作界面显示,其他类似界面可以参照这里
  */
-public class WaittingWorksActivity extends BaseActivity {
+public class WaittingWorksActivity extends BaseActivity implements View.OnClickListener{
     @ViewInject(R.id.waitting_work_plv)
     private PullToRefreshListView myplv;
     private String msg_title = "待办工作";
     private NewMsgAdapter msgAdapter;
+    private PopupWindow setWindow = null;
+    private int mPosition;
+    private EmptyLayout mEmptyLayout;
+    private Handler mhandler = new Handler(){
+        @Override
+        public void handleMessage(Message msg) {
+            super.handleMessage(msg);
+            switch (msg.what){
+
+                default:
+                    if (msg.getData() != null) {
+                        if (!StringUtils.isEmpty(msg.getData().getString("result"))) {
+                            ToastMessage(msg.getData().getString("result"));
+                        }
+                    }
+                    break;
+            }
+        }
+    };
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -35,29 +65,106 @@ public class WaittingWorksActivity extends BaseActivity {
     }
 
     private void initView() {
+        mEmptyLayout = new EmptyLayout(this, myplv.getRefreshableView());
+        mEmptyLayout.setShowEmptyButton(false);
+        mEmptyLayout.setShowErrorButton(false);
+        mEmptyLayout.setShowLoadingButton(false);
+        myplv.setMode(PullToRefreshBase.Mode.BOTH);
+
         msgAdapter = new NewMsgAdapter();
         myplv.getRefreshableView().setAdapter(msgAdapter);
     }
 
     private void NewMsgsEvent() {
+
+        myplv.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
+            @Override
+            public void onPullDownToRefresh(PullToRefreshBase refreshView) { //TODO 下拉刷新
+                new Handler().postDelayed(new Runnable() {
+                    @Override
+                    public void run() {
+                        myplv.onRefreshComplete();
+                    }
+                },3000);
+            }
+
+            @Override
+            public void onPullUpToRefresh(PullToRefreshBase refreshView) { //TODO 上拉加载
+                new Handler().postDelayed(new Runnable() {
+                    @Override
+                    public void run() {
+                        myplv.onRefreshComplete();
+                    }
+                }, 3000);
+            }
+        });
         myplv.getRefreshableView().setOnItemClickListener(new AdapterView.OnItemClickListener() {
             @Override
             public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
-                ToastMessage("点击" + position);
+                mPosition = (int) parent.getItemIdAtPosition(position);
+                ToastMessage("点击position = " + mPosition);
             }
         });
 
         myplv.getRefreshableView().setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
             @Override
             public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
-
-                ToastMessage("长按" + position);
+                mPosition = (int) parent.getItemIdAtPosition(position);
+                ToastMessage("长按position = " + mPosition);
+                showPopupWindow();
                 return true;
             }
         });
     }
 
-    //TODO 下面的消息列表适配器
+    private void showPopupWindow() {
+        if (setWindow == null) initPopupWindow();
+        setWindow.showAtLocation(getWindow().getDecorView(), Gravity.CENTER, 0, 0);
+        DisplayUtil.backgroundAlpha(this, 0.4f);
+    }
+
+    private void initPopupWindow() {
+        View viewContext = LayoutInflater.from(mContext).inflate(R.layout.msgs_long_click,null);
+        viewContext.findViewById(R.id.delete_tv).setOnClickListener(this);
+        viewContext.findViewById(R.id.markread_tv).setOnClickListener(this);
+        setWindow = new PopupWindow(viewContext,
+                LinearLayout.LayoutParams.MATCH_PARENT,
+                LinearLayout.LayoutParams.WRAP_CONTENT, true);
+        setWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
+            @Override
+            public void onDismiss() {
+                closePopupWindow();
+            }
+        });
+    }
+    private void closePopupWindow() {
+        if (setWindow != null)
+            setWindow.dismiss();
+        DisplayUtil.backgroundAlpha(this, 1f);
+    }
+    @Override
+    public void onClick(View v) {
+        switch (v.getId()){
+            case R.id.delete_tv:
+                doDeleteMsg();     //TODO 删除操作
+                closePopupWindow();
+                break;
+            case R.id.markread_tv:
+                doMarkReadMsg();   // TODO 标为已读
+                closePopupWindow();
+                break;
+        }
+    }
+
+    private void doMarkReadMsg() {
+
+    }
+
+    private void doDeleteMsg() {
+
+    }
+
+    //TODO 列表适配器
     public  class NewMsgAdapter extends BaseAdapter {
 
         @Override

+ 1 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/WorkDailyShowActivity.java

@@ -149,7 +149,7 @@ public class WorkDailyShowActivity extends BaseActivity implements RecognizerDia
 
             }
         });
-        mPullToRefreshListView.setMode(PullToRefreshBase.Mode.BOTH);
+
 
         //长按item弹出未提交单据删除对话框
        /* mPullToRefreshListView.getRefreshableView().setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {

+ 0 - 1
WeiChat/src/main/res/layout/activity_oamain.xml

@@ -393,7 +393,6 @@
                         android:layout_weight="1"
                         android:orientation="vertical"
                         android:layout_marginTop="2dp"
-                        android:visibility="invisible"
                         >
                         <FrameLayout
                             android:id="@+id/notice_head_area"

+ 47 - 0
WeiChat/src/main/res/layout/msgs_long_click.xml

@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:orientation="vertical"
+    android:background="@color/transparent"
+   >
+<LinearLayout
+    android:layout_width="150dp"
+    android:layout_height="match_parent"
+    android:orientation="vertical"
+    android:layout_gravity="center_horizontal"
+    android:background="@color/white"
+    >
+
+        <TextView
+            android:id="@+id/delete_tv"
+            android:layout_width="150dp"
+            android:layout_height="45dp"
+            android:gravity="center"
+            android:text="删除"
+            android:textColor="@color/black"
+            android:textSize="15sp"
+            android:background="@drawable/selector_me_menu_item_bg"
+            />
+
+
+        <View
+            android:layout_width="200dp"
+            android:layout_height="1dp"
+            android:background="@color/gray_light"
+            android:visibility="visible"/>
+        <TextView
+            android:id="@+id/markread_tv"
+            android:layout_width="150dp"
+            android:layout_height="45dp"
+            android:gravity="center"
+            android:text="标为已读"
+            android:textSize="15sp"
+            android:background="@drawable/selector_me_menu_item_bg"
+            android:textColor="@color/black"
+            android:visibility="visible"
+            />
+</LinearLayout>
+
+
+</LinearLayout>