Browse Source

Merge branch 'draft' of https://gitlab.com/Arisono/SkWeiChat-Baidu into draft

FANGLH 8 years ago
parent
commit
aee86fc681

+ 4 - 5
WeiChat/src/main/java/com/xzjmyk/pm/activity/adapter/UUFriendSortAdapter.java

@@ -42,7 +42,7 @@ public class UUFriendSortAdapter extends BaseAdapter implements SectionIndexer {
     }
 
     public void setData(List<BaseSortModel<Friend>> sortFriends) {
-        this.mSortFriends = (sortFriends == null ? new ArrayList<BaseSortModel<Friend>>() : sortFriends);
+        this.mSortFriends.addAll((sortFriends == null ? new ArrayList<BaseSortModel<Friend>>() : sortFriends));
         notifyDataSetChanged();
     }
 
@@ -62,7 +62,7 @@ public class UUFriendSortAdapter extends BaseAdapter implements SectionIndexer {
 
     @Override
     public Object getItem(int position) {
-        return position;
+        return mSortFriends.get(position);
     }
 
     @Override
@@ -151,7 +151,7 @@ public class UUFriendSortAdapter extends BaseAdapter implements SectionIndexer {
                     Matcher matcher = regex.matcher(phone.toString());
                     if (matcher.matches()) {
 //                        selectByPhone(phone, finalConvertView);
-                        CommonUtil.phoneAction(mContext,phone);
+                        CommonUtil.phoneAction(mContext, phone);
                     } else {
                         Crouton.makeText(mContext, R.string.not_format_phone);
                     }
@@ -175,7 +175,6 @@ public class UUFriendSortAdapter extends BaseAdapter implements SectionIndexer {
         menuWindow.showAtLocation(v, Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL, 0, 0); //设置layout在PopupWindow中显示的位置
     }
 
-   
 
     /**
      * 根据ListView的当前位置获取分类的首字母的Char ascii值
@@ -204,7 +203,7 @@ public class UUFriendSortAdapter extends BaseAdapter implements SectionIndexer {
     }
 
     class ViewHolder {
-//        TextView tag_tv;
+        //        TextView tag_tv;
         ImageView header_img;
         TextView name_tv;
         TextView sub_tv;

+ 62 - 60
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/contact/MyFriendActivity.java

@@ -97,53 +97,15 @@ public class MyFriendActivity extends BaseActivity {
         initView();
 
     }
-
-    @Override
-    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
-        if (requestCode == 0x20 && resultCode == 0x20) {
-//            mAdapter.setisRefeshed(true);
-//            upDataFriend();
-//            loadData();
-        }
-    }
-
-    private void upDataFriend() {
-        HashMap<String, String> params = new HashMap<String, String>();
-        params.put("access_token", MyApplication.getInstance().mAccessToken);
-        Log.i("url", "相互关注:" + MyApplication.getInstance().getConfig().FRIENDS_ATTENTION_LIST);
-        StringJsonArrayRequest<AttentionUser> request = new StringJsonArrayRequest<AttentionUser>(
-                MyApplication.getInstance().getConfig().FRIENDS_ATTENTION_LIST, new Response.ErrorListener() {
-            @Override
-            public void onErrorResponse(VolleyError arg0) {
-                ToastUtil.showErrorNet(MyFriendActivity.this);
-            }
-        }, new StringJsonArrayRequest.Listener<AttentionUser>() {
-            @Override
-            public void onResponse(ArrayResult<AttentionUser> result) {
-                LogUtil.d("Test","result:"+result);
-                boolean success = Result.defaultParser(MyFriendActivity.this, result, false);
-                if (success) {
-                    FriendDao.getInstance().addAttentionUsers(mHandler, MyApplication.getInstance().mLoginUser.getUserId(), result.getData(),
-                            new OnCompleteListener() {
-                                @Override
-                                public void onCompleted() {
-                                    mPullToRefreshListView.getRefreshableView();
-                                }
-                            });
-                }
-            }
-        }, AttentionUser.class, params);
-        MyApplication.getInstance().getFastVolley().addDefaultRequest(HASHCODE, request);
-    }
-
-
+    
     private void initView() {
         progressDialog.show();
         mPullToRefreshListView = (PullToRefreshListView) findViewById(R.id.pull_refresh_list);
         mTextDialog = (TextView) findViewById(R.id.text_dialog);
         mSideBar = (SideBar) findViewById(R.id.sidebar);
+        voiceSearchView = (VoiceSearchView)findViewById(R.id.voiceSearchView);
         mSideBar.setTextView(mTextDialog);
-//        mPullToRefreshListView.setEmptyView(R.layout.view_empty);
+      
         mSideBar.setOnTouchingLetterChangedListener(new SideBar.OnTouchingLetterChangedListener() {
             @Override
             public void onTouchingLetterChanged(String s) {
@@ -163,12 +125,8 @@ public class MyFriendActivity extends BaseActivity {
                 //linear_top_menu.setVisibility(View.VISIBLE);
             }
         });
-        setHeaderView();
+      // setHeaderView();
         loadData();
-        mAdapter = new UUFriendSortAdapter(MyFriendActivity.this, mSortFriends);
-        mPullToRefreshListView.setMode(PullToRefreshBase.Mode.DISABLED);
-        mPullToRefreshListView.getRefreshableView().setAdapter(mAdapter);
-        mPullToRefreshListView.setAdapter(mAdapter);
        /* mPullToRefreshListView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener<ListView>() {
             @Override
             public void onRefresh(PullToRefreshBase<ListView> refreshView) {
@@ -219,14 +177,6 @@ public class MyFriendActivity extends BaseActivity {
         });
 
         mProgressDialog = ProgressDialogUtil.init(MyFriendActivity.this, null, getString(R.string.please_wait));
-    }
-
-    /*设置头文件*/
-    private void setHeaderView() {
-        View headview = LayoutInflater.from(ct).inflate(R.layout.header_fragment_contact, null);
-        mPullToRefreshListView.getRefreshableView().addHeaderView(headview);
-        headview.findViewById(R.id.click_ll).setVisibility(View.GONE);
-        voiceSearchView = (VoiceSearchView) headview.findViewById(R.id.voiceSearchView);
 
         voiceSearchView.addTextChangedListener(new TextWatcher() {
             @Override
@@ -243,6 +193,16 @@ public class MyFriendActivity extends BaseActivity {
                 upDataBySearch(str);
             }
         });
+    }
+
+    /*设置头文件*/
+    private void setHeaderView() {
+        View headview = LayoutInflater.from(ct).inflate(R.layout.header_fragment_contact, null);
+        mPullToRefreshListView.getRefreshableView().addHeaderView(headview);
+        headview.findViewById(R.id.click_ll).setVisibility(View.GONE);
+       voiceSearchView = (VoiceSearchView) headview.findViewById(R.id.voiceSearchView);
+
+    
 
     }
 
@@ -253,15 +213,15 @@ public class MyFriendActivity extends BaseActivity {
      */
     private void upDataBySearch(String str) {
         if (ListUtils.isEmpty(allFriends)) return;
-        mSortFriends.clear();
+        mAdapter.getmSortFriends().clear();
         for (BaseSortModel<Friend> e : allFriends) {
             String text = e.getBean().getShowName() + e.getBean().getDepart() + e.getBean().getPosition() + e.getBean().getPhone();
             if (com.xzjmyk.pm.activity.ui.erp.util.StringUtils.isInclude(text, str)) {
-                mSortFriends.add(e);
+                mAdapter.getmSortFriends().add(e);
             }
         }
-        LogUtil.prinlnLongMsg("mSortFriends",JSON.toJSONString(mSortFriends));
-        mAdapter.setData(mSortFriends);
+        LogUtil.prinlnLongMsg("mSortFriends",JSON.toJSONString(mAdapter.getmSortFriends()));
+        mAdapter.notifyDataSetChanged();
     }
 
     @Override
@@ -271,7 +231,9 @@ public class MyFriendActivity extends BaseActivity {
 //            loadData();
             mNeedUpdate = false;
         }
-        mAdapter.notifyDataSetChanged();
+        if (mAdapter!=null) {
+            mAdapter.notifyDataSetChanged();
+        }
     }
 
     List<Friend> friends;//临时变量
@@ -409,9 +371,11 @@ public class MyFriendActivity extends BaseActivity {
         }
         mAdapter = new UUFriendSortAdapter(MyFriendActivity.this, mSortFriends);
         this.friends = friends;
-        mAdapter.notifyDataSetInvalidated();
+        mPullToRefreshListView.setMode(PullToRefreshBase.Mode.DISABLED);
+        mPullToRefreshListView.setAdapter(mAdapter);
         mPullToRefreshListView.onRefreshComplete();
         progressDialog.dismiss();
+        mPullToRefreshListView.setEmptyView(R.layout.view_empty);
     }
 
     private void getFriendByErp(List<Friend> friends) {
@@ -464,6 +428,44 @@ public class MyFriendActivity extends BaseActivity {
     String HASHCODE = Integer.toHexString(this.hashCode()) + "@";
 
 
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        if (requestCode == 0x20 && resultCode == 0x20) {
+//            mAdapter.setisRefeshed(true);
+//            upDataFriend();
+//            loadData();
+        }
+    }
+
+    private void upDataFriend() {
+        HashMap<String, String> params = new HashMap<String, String>();
+        params.put("access_token", MyApplication.getInstance().mAccessToken);
+        Log.i("url", "相互关注:" + MyApplication.getInstance().getConfig().FRIENDS_ATTENTION_LIST);
+        StringJsonArrayRequest<AttentionUser> request = new StringJsonArrayRequest<AttentionUser>(
+                MyApplication.getInstance().getConfig().FRIENDS_ATTENTION_LIST, new Response.ErrorListener() {
+            @Override
+            public void onErrorResponse(VolleyError arg0) {
+                ToastUtil.showErrorNet(MyFriendActivity.this);
+            }
+        }, new StringJsonArrayRequest.Listener<AttentionUser>() {
+            @Override
+            public void onResponse(ArrayResult<AttentionUser> result) {
+                LogUtil.d("Test","result:"+result);
+                boolean success = Result.defaultParser(MyFriendActivity.this, result, false);
+                if (success) {
+                    FriendDao.getInstance().addAttentionUsers(mHandler, MyApplication.getInstance().mLoginUser.getUserId(), result.getData(),
+                            new OnCompleteListener() {
+                                @Override
+                                public void onCompleted() {
+                                    mPullToRefreshListView.getRefreshableView();
+                                }
+                            });
+                }
+            }
+        }, AttentionUser.class, params);
+        MyApplication.getInstance().getFastVolley().addDefaultRequest(HASHCODE, request);
+    }
+
     @Override
     public void onDestroy() {
         super.onDestroy();

+ 3 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/message/ProcessMsgActivity.java

@@ -781,6 +781,9 @@ public class ProcessMsgActivity extends BaseActivity implements View.OnClickList
                     jsonArray = (JSONArray) results.values;
                     LogUtil.d("过滤后:" + JSON.toJSONString(jsonArray));
                     notifyDataSetChanged();
+                    if (mAdapter.getCount()==0){
+                        mEmptyLayout.showEmpty();
+                    }
                 }
             };
         }

+ 2 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/xmpp/CoreService.java

@@ -84,8 +84,8 @@ public class CoreService extends Service {
             case XmppMessage.TYPE_IMAGE:
                 content = "收到一张新图片";
                 break;
-            case XmppMessage.TYPE_VOICE:
-                content = "收到一新的语音";
+            case XmppMessage.TYPE_VOICE: 
+                content = "收到一新的语音";
                 break;
             case XmppMessage.TYPE_LOCATION:
                 content = "收到一个地址";

+ 7 - 3
WeiChat/src/main/res/layout/fragment_contact_friend.xml

@@ -1,13 +1,17 @@
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:ptr="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:background="@drawable/bg_main">
-
-    <com.handmark.pulltorefresh.library.PullToRefreshListView 
-        xmlns:ptr="http://schemas.android.com/apk/res-auto"
+    <com.xzjmyk.pm.activity.ui.erp.view.VoiceSearchView
+        android:id="@+id/voiceSearchView"
+        android:layout_width="match_parent"
+        android:layout_height="48dp" />
+    <com.handmark.pulltorefresh.library.PullToRefreshListView
         android:id="@+id/pull_refresh_list"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
+        android:layout_below="@+id/voiceSearchView"
         android:divider="#00000000"
         android:dividerHeight="0dip"
         android:listSelector="@android:color/transparent"