Parcourir la source

第一次点击企业联系人后返回自动更新好友列表,不用下拉

gongpm il y a 10 ans
Parent
commit
a8f9665941
23 fichiers modifiés avec 154 ajouts et 41 suppressions
  1. 29 14
      WeiChat/src/main/java/com/sk/weichat/ui/MainActivity.java
  2. 20 1
      WeiChat/src/main/java/com/sk/weichat/ui/erp/activity/CompanyContactsActivity.java
  3. 9 11
      WeiChat/src/main/java/com/sk/weichat/ui/erp/activity/NoticesActivity.java
  4. 12 7
      WeiChat/src/main/java/com/sk/weichat/ui/erp/fragment/LinksManFragment.java
  5. 75 0
      WeiChat/src/main/java/com/sk/weichat/view/XORView.java
  6. BIN
      WeiChat/src/main/res/drawable-hdpi/tab_found_press_u.png
  7. BIN
      WeiChat/src/main/res/drawable-hdpi/tab_job_press_u.png
  8. BIN
      WeiChat/src/main/res/drawable-hdpi/tab_me_press_u.png
  9. BIN
      WeiChat/src/main/res/drawable-hdpi/tab_smile_press_u.png
  10. BIN
      WeiChat/src/main/res/drawable-xhdpi/tab_found_press_u.png
  11. BIN
      WeiChat/src/main/res/drawable-xhdpi/tab_job_press_u.png
  12. BIN
      WeiChat/src/main/res/drawable-xhdpi/tab_me_press_u.png
  13. BIN
      WeiChat/src/main/res/drawable-xhdpi/tab_smile_press_u.png
  14. BIN
      WeiChat/src/main/res/drawable-xxhdpi/tab_found_press_u.png
  15. BIN
      WeiChat/src/main/res/drawable-xxhdpi/tab_job_press_u.png
  16. BIN
      WeiChat/src/main/res/drawable-xxhdpi/tab_me_press_u.png
  17. BIN
      WeiChat/src/main/res/drawable-xxhdpi/tab_smile_press_u.png
  18. 2 1
      WeiChat/src/main/res/drawable/tab_interview.xml
  19. 2 1
      WeiChat/src/main/res/drawable/tab_more.xml
  20. 1 0
      WeiChat/src/main/res/layout/act_notice_list.xml
  21. 3 4
      WeiChat/src/main/res/layout/activity_splash.xml
  22. 0 1
      WeiChat/src/main/res/layout/chat_from_item_image.xml
  23. 1 1
      WeiChat/src/main/res/values/colors.xml

+ 29 - 14
WeiChat/src/main/java/com/sk/weichat/ui/MainActivity.java

@@ -85,7 +85,7 @@ public class MainActivity extends BaseActivity implements NetWorkObserver, AuthS
     public final static String SIP_PASSWORD = "ms_2014_0528@sk!@#";
     public static String HASHCODE = "MainActivity";
     public static final String TIME_MAIN = "TIMEMAIN";
-    public static long timeMin=-1;
+    public static long timeMin = -1;
     public static boolean isUnReadWork;   //判断我的空间是否有新内容
     public final static int SIP_SERVER_PORT = 5060;// 端口
     public final static String EXTRAT_SIP_SESSION_ID = "SipSession";
@@ -130,6 +130,7 @@ public class MainActivity extends BaseActivity implements NetWorkObserver, AuthS
     private boolean isPause = true;// 界面是否暂停
     private ScreenListener screenListener;//锁屏开屏监听
     private int mRetryCheckDelay = 0;
+    public static int UPDATA_LIST = 101;
     private Handler mUserCheckHander = new Handler() {
         public void handleMessage(Message msg) {
             if (msg.what == MSG_USER_CHECK) {
@@ -157,11 +158,26 @@ public class MainActivity extends BaseActivity implements NetWorkObserver, AuthS
         }
     };
 
+    /**
+     * 启动返回
+     * by gongpm
+     */
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        super.onActivityResult(requestCode, resultCode, data);
+        if (UPDATA_LIST == requestCode){
+            if (mBusinessCircleFragment!=null){
+                mBusinessCircleFragment.onResult();
+            }
+        }
+
+    }
 
 
-    private void hineColor(){
+    private void hineColor() {
 
     }
+
     /**
      * @desc:主页菜单入口
      * @author:Administrator on 2016/1/26 10:03
@@ -217,13 +233,14 @@ public class MainActivity extends BaseActivity implements NetWorkObserver, AuthS
     private AppConfig config;
     private String mLoginUserId;
 
-    public void changeRedZone(boolean b){
-        if (b){
+    public void changeRedZone(boolean b) {
+        if (b) {
             unWorkReadTV.setVisibility(View.VISIBLE);
-        }else {
+        } else {
             unWorkReadTV.setVisibility(View.GONE);
         }
     }
+
     private void requestMyBusiness() {
         if (config == null) {
             config = MyApplication.getInstance().getConfig();
@@ -247,15 +264,15 @@ public class MainActivity extends BaseActivity implements NetWorkObserver, AuthS
                 if (success) {
                     List<CircleMessage> datas = result.getData();
                     if (datas != null && datas.size() > 0) { // 没有更多数据
-                        long newTime=datas.get(0).getTime();  //获取最新时间
-                        long oldTime= PreferenceUtils.getLong(mContext, TIME_MAIN); //获取以前时间
+                        long newTime = datas.get(0).getTime();  //获取最新时间
+                        long oldTime = PreferenceUtils.getLong(mContext, TIME_MAIN); //获取以前时间
 
-                        if (newTime>oldTime){//当有新消息
-                            Log.i("gongpengming","newTime="+newTime+"@@@ oldTime="+oldTime);
+                        if (newTime > oldTime) {//当有新消息
+                            Log.i("gongpengming", "newTime=" + newTime + "@@@ oldTime=" + oldTime);
                             unWorkReadTV.setVisibility(View.VISIBLE);
-                            timeMin=newTime;
+                            timeMin = newTime;
                             isUnReadWork = true;
-                        }else{
+                        } else {
                             unWorkReadTV.setVisibility(View.GONE);
                             isUnReadWork = false;
                         }
@@ -391,7 +408,6 @@ public class MainActivity extends BaseActivity implements NetWorkObserver, AuthS
         getSupportActionBar().setDisplayHomeAsUpEnabled(false);
         /**@注释:主页布局文件 */
         setContentView(R.layout.activity_main);
-
         SIP_USERNAME = MyApplication.getInstance().mLoginUser.getUserId();
         String host = mConfig.MeetingHost;
         SIP_DOMAIN = host == null ? "120.24.211.24" : host;
@@ -405,12 +421,11 @@ public class MainActivity extends BaseActivity implements NetWorkObserver, AuthS
             Log.i("MainActivity", "关闭百度推送");
             PushManager.stopWork(this);
         }
-        mActivityManager = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
+        mActivityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
         if (savedInstanceState != null) {
             restoreState(savedInstanceState);
         }
         initView(savedInstanceState);//---
-
         // 注册网络改变回调
         MyApplication.getInstance().registerNetWorkObserver(this);
         //更新版本

+ 20 - 1
WeiChat/src/main/java/com/sk/weichat/ui/erp/activity/CompanyContactsActivity.java

@@ -33,6 +33,7 @@ import com.sk.weichat.MyApplication;
 import com.sk.weichat.R;
 import com.sk.weichat.bean.Friend;
 import com.sk.weichat.db.dao.FriendDao;
+import com.sk.weichat.ui.MainActivity;
 import com.sk.weichat.ui.base.BaseActivity;
 import com.sk.weichat.ui.erp.db.DBManager;
 import com.sk.weichat.ui.erp.entity.EmployeesEntity;
@@ -361,7 +362,7 @@ public class CompanyContactsActivity extends BaseActivity {
                     break;
                 case Constants.APP_SOCKETIMEOUTEXCEPTION:
                     String exception = msg.getData().getString("result");
-                    com.sk.weichat.ui.erp.net.ViewUtil.ToastMessage(ct,exception);
+                    com.sk.weichat.ui.erp.net.ViewUtil.ToastMessage(ct, exception);
                     com.sk.weichat.ui.erp.net.ViewUtil.AutoLoginErp(ct);
                     reScrollView.onRefreshComplete();
                     break;
@@ -384,6 +385,23 @@ public class CompanyContactsActivity extends BaseActivity {
         initView();
     }
 
+    @Override
+    protected void onPause() {
+        super.onPause();
+    }
+
+    @Override
+    protected void onStop() {
+        super.onStop();
+    }
+
+    @Override
+    protected void onDestroy() {
+        super.onDestroy();
+        setResult(MainActivity.UPDATA_LIST);
+
+    }
+
     private void initView() {
         initListener();
         mHandler.sendEmptyMessage(UPDATE_CHANGE_MASTER);
@@ -788,6 +806,7 @@ public class CompanyContactsActivity extends BaseActivity {
             ModelItem item = null;
             if (convertView == null) {
                 item = new ModelItem();
+
                 convertView = inflater.inflate(R.layout.item_staff_tree, parent, false);
                 item.iv_falg = (ImageView) convertView.findViewById(R.id.iv_item_falg);
                 item.tv_name = (TextView) convertView.findViewById(R.id.tv_name);

+ 9 - 11
WeiChat/src/main/java/com/sk/weichat/ui/erp/activity/NoticesActivity.java

@@ -17,8 +17,6 @@ import android.widget.TextView;
 
 import com.alibaba.fastjson.JSON;
 import com.handmark.pulltorefresh.library.PullToRefreshListView;
-import com.lidroid.xutils.ViewUtils;
-import com.lidroid.xutils.view.annotation.ViewInject;
 import com.sk.weichat.MyApplication;
 import com.sk.weichat.R;
 import com.sk.weichat.bean.Friend;
@@ -44,9 +42,8 @@ import java.util.Map;
  */
 public class NoticesActivity extends BaseActivity {
 
-    @ViewInject(R.id.list_notice)
+//    @ViewInject(R.id.list_notice)
     private PullToRefreshListView mlist;
-    @ViewInject(R.id.progress_bar)
     private ProgressBar progress_bar;
     private EmptyLayout mEmptyLayout;
     private CardItemAdapter adapter;
@@ -56,14 +53,19 @@ public class NoticesActivity extends BaseActivity {
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
+
+        setContentView(R.layout.act_notice_list);
+        mlist= (PullToRefreshListView) findViewById(R.id.list_notice);
+        progress_bar = (ProgressBar) findViewById(R.id.progress_bar);
+
         initView();
         initData();
     }
 
     public void initView() {
-        setContentView(R.layout.act_notice_list);
-        progress_bar = (ProgressBar) findViewById(R.id.progress_bar);
-        ViewUtils.inject(this);
+
+//        ViewUtils.inject(this);
+
         TAG = "NoticesActivity";
         ct = this;
         getSupportActionBar().setTitle("通知");
@@ -71,10 +73,8 @@ public class NoticesActivity extends BaseActivity {
         mEmptyLayout.setShowEmptyButton(false);
         mEmptyLayout.setShowErrorButton(false);
         mEmptyLayout.setShowLoadingButton(false);
-
         type = getIntent().getIntExtra("type", 0);
         mlist.getRefreshableView().setOnItemClickListener(new OnItemClickListener() {
-
             @Override
             public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                 CardItemAdapter.ItemModel model = (CardItemAdapter.ItemModel) view.getTag();
@@ -133,8 +133,6 @@ public class NoticesActivity extends BaseActivity {
                         newsEntity.setData(fiterdata);
                         adapter = new CardItemAdapter(ct, newsEntity);
                         mlist.getRefreshableView().setAdapter(adapter);
-                        if (progress_bar == null)
-                            progress_bar = (ProgressBar) findViewById(R.id.progress_bar);
                         progress_bar.setVisibility(View.GONE);
                     } else {
                         adapter.notifyDataSetChanged();

+ 12 - 7
WeiChat/src/main/java/com/sk/weichat/ui/erp/fragment/LinksManFragment.java

@@ -49,6 +49,7 @@ import com.sk.weichat.sortlist.BaseComparator;
 import com.sk.weichat.sortlist.BaseSortModel;
 import com.sk.weichat.sortlist.PingYinUtil;
 import com.sk.weichat.sortlist.SideBar;
+import com.sk.weichat.ui.MainActivity;
 import com.sk.weichat.ui.base.XutilsFragment;
 import com.sk.weichat.ui.circle.BasicInfoActivity;
 import com.sk.weichat.ui.erp.activity.CommonFragmentActivity;
@@ -64,7 +65,6 @@ import com.sk.weichat.util.ProgressDialogUtil;
 import com.sk.weichat.util.StringUtils;
 import com.sk.weichat.util.TimeUtils;
 import com.sk.weichat.util.ToastUtil;
-import com.sk.weichat.util.ViewAlphaUtil;
 import com.sk.weichat.volley.ArrayResult;
 import com.sk.weichat.volley.ObjectResult;
 import com.sk.weichat.volley.Result;
@@ -106,24 +106,31 @@ public class LinksManFragment extends XutilsFragment implements View.OnClickList
     private Activity mActivity;
     private DBManager manager;
 
-    //接收修改司广播
+    //接收修改F司广播
     private IntentFilter inputFilter;
     private BroadcastReceiver receiver = new BroadcastReceiver() {
         @Override
         public void onReceive(Context context, Intent intent) {
             if ("home".equals(intent.getStringExtra("falg"))) {
+                Log.i("gongpengming","onReceive");
                 upDataFriend();
                 loadData();
-
             }
         }
     };
 
+    public void onResult() {
+        Log.i("gongpengming","onResult");
+        upDataFriend();
+        loadData();
+    }
+
     @Override
     public void onClick(View v) {
         switch (v.getId()) {
             case R.id.my_data_rl:
-                ct.startActivity(new Intent(ct, CompanyContactsActivity.class));
+//                ct.startActivity();
+                ((MainActivity) ct).startActivityForResult(new Intent(ct, CompanyContactsActivity.class), MainActivity.UPDATA_LIST);
                 break;
             case R.id.my_friends_rl:
                 ct.startActivity(new Intent(ct, MyFriendActivity.class));
@@ -133,7 +140,6 @@ public class LinksManFragment extends XutilsFragment implements View.OnClickList
                 break;
             case R.id.local_video_rl:
                 //TODO 在通讯录页面点击商务伙伴时调转页面,待实现
-                Log.i("gongpengmimngIV", "点击了商务圈");
                 ToastUtil.showToast(getActivity(), "抱歉,该功能还未开发");
                 break;
         }
@@ -178,7 +184,7 @@ public class LinksManFragment extends XutilsFragment implements View.OnClickList
         List<EmployeesEntity> emList = manager.select_getEmployee(
                 new String[]{master},
                 "whichsys=?");
-       Log.i("gongpengming","emList.size()="+emList.size()) ;
+        Log.i("gongpengming", "emList.size()=" + emList.size());
         List<Friend> friends = new ArrayList<>();
 
         for (int i = 0; i < emList.size(); i++) {
@@ -224,7 +230,6 @@ public class LinksManFragment extends XutilsFragment implements View.OnClickList
                 boolean success = Result.defaultParser(mActivity, result, false);
                 if (success) {
                     FriendDao.getInstance().addAttentionUsers(mHandler, MyApplication.getInstance().mLoginUser.getUserId(), result.getData(),
-
                             new OnCompleteListener() {
                                 @Override
                                 public void onCompleted() {

+ 75 - 0
WeiChat/src/main/java/com/sk/weichat/view/XORView.java

@@ -0,0 +1,75 @@
+package com.sk.weichat.view;
+
+import android.content.Context;
+import android.graphics.BitmapShader;
+import android.graphics.Canvas;
+import android.graphics.Paint;
+import android.graphics.Path;
+import android.graphics.RectF;
+import android.graphics.Shader;
+import android.graphics.drawable.BitmapDrawable;
+import android.util.AttributeSet;
+import android.view.View;
+
+import com.sk.weichat.R;
+
+/**
+ * Created by Coder.Yan on 2015/5/21.
+ */
+@SuppressWarnings("deprecation")
+public class XORView extends View {
+    Paint paint;
+    Path path;
+    BitmapShader brush;
+
+
+    public XORView(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        paint = new Paint();
+        path = new Path();
+        BitmapDrawable drawable = (BitmapDrawable)getResources().getDrawable(R.drawable.avatar_normal);
+        brush = new BitmapShader(drawable.getBitmap(), Shader.TileMode.REPEAT, Shader.TileMode.REPEAT);
+    }
+
+
+    public XORView(Context context, AttributeSet attrs, int defStyleAttr) {
+        super(context, attrs, defStyleAttr);
+    }
+
+
+
+
+    @Override
+    protected void onDraw(Canvas canvas) {
+        super.onDraw(canvas);
+        canvas.save();
+        paint.setStyle(Paint.Style.FILL);
+        //paint.setColor(Color.GREEN);
+        paint.setShader(brush);
+        canvas.drawPath(path, paint);
+        paint.reset();
+        paint.setStyle(Paint.Style.STROKE);
+        canvas.drawPath(path, paint);
+        canvas.restore();
+    }
+ 
+    @Override
+    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
+        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
+        path.reset();
+        int w = getWidth();
+        int h = getHeight();
+        path.moveTo(0,10);
+        path.arcTo(new RectF(0,0,20,20),180,90);
+        path.lineTo(w - 30,0);
+        path.arcTo(new RectF(w - 40, 0, w - 20, 20), -90, 90);
+        path.lineTo(w-20,h/2 -10);
+        path.lineTo(w,h/2);
+        path.lineTo(w-20,h/2 +10);
+        path.lineTo(w-20,h - 10);
+        path.arcTo(new RectF(w-40, h-20,w-20,h-1),0,90);
+        path.lineTo(10,h-1);
+        path.arcTo(new RectF(0,h-20,20,h-1),90,90);
+        path.close();
+    }
+}

BIN
WeiChat/src/main/res/drawable-hdpi/tab_found_press_u.png


BIN
WeiChat/src/main/res/drawable-hdpi/tab_job_press_u.png


BIN
WeiChat/src/main/res/drawable-hdpi/tab_me_press_u.png


BIN
WeiChat/src/main/res/drawable-hdpi/tab_smile_press_u.png


BIN
WeiChat/src/main/res/drawable-xhdpi/tab_found_press_u.png


BIN
WeiChat/src/main/res/drawable-xhdpi/tab_job_press_u.png


BIN
WeiChat/src/main/res/drawable-xhdpi/tab_me_press_u.png


BIN
WeiChat/src/main/res/drawable-xhdpi/tab_smile_press_u.png


BIN
WeiChat/src/main/res/drawable-xxhdpi/tab_found_press_u.png


BIN
WeiChat/src/main/res/drawable-xxhdpi/tab_job_press_u.png


BIN
WeiChat/src/main/res/drawable-xxhdpi/tab_me_press_u.png


BIN
WeiChat/src/main/res/drawable-xxhdpi/tab_smile_press_u.png


+ 2 - 1
WeiChat/src/main/res/drawable/tab_interview.xml

@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <selector
   xmlns:android="http://schemas.android.com/apk/res/android">
-    <item android:state_enabled="true" android:state_checked="true" android:drawable="@drawable/tab_smile_press_u" />
+    <item android:state_enabled="true" android:state_checked="true"
+        android:drawable="@drawable/tab_smile_press_u" />
     <item android:drawable="@drawable/tab_smile_u" />
 </selector>

+ 2 - 1
WeiChat/src/main/res/drawable/tab_more.xml

@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <selector
   xmlns:android="http://schemas.android.com/apk/res/android">
-    <item android:state_enabled="true" android:state_checked="true" android:drawable="@drawable/tab_me_press_u" />
+    <item android:state_enabled="true" android:state_checked="true"
+        android:drawable="@drawable/tab_me_press_u" />
     <item android:drawable="@drawable/tab_me_u" />
 </selector>

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

@@ -6,6 +6,7 @@
     <ProgressBar
         android:id="@+id/progress_bar"
         android:layout_width="wrap_content"
+        android:visibility="visible"
         android:layout_height="wrap_content"
         android:layout_centerInParent="true" />
 

+ 3 - 4
WeiChat/src/main/res/layout/activity_splash.xml

@@ -1,8 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:background="#ff000000">
+    android:layout_height="match_parent">
 
     <FrameLayout
         android:id="@+id/welcome_ly"
@@ -52,8 +51,8 @@
             android:shadowDx="1.2"
             android:shadowDy="1.2"
             android:shadowRadius="1.0"
-            android:visibility="gone"
-            android:text="@string/register" />
+            android:text="@string/register"
+            android:visibility="gone" />
     </RelativeLayout>
 
 </FrameLayout>

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

@@ -55,7 +55,6 @@
                 android:orientation="vertical">
                 <!-- 所有Item该布局的子布局不能超过210dp -->
 
-
                 <com.sk.weichat.view.RoundCornerImageView
                     android:id="@+id/chat_from_image"
                     android:layout_width="match_parent"

+ 1 - 1
WeiChat/src/main/res/values/colors.xml

@@ -11,7 +11,7 @@
     <color name="wirtehine">#a3b2cf</color>
     <color name="text_main">#3c3c3c</color>
     <color name="text_hine">#575757</color>
-    <color name="bar_pass">#7bb4dc</color>
+    <color name="bar_pass">#0096e6</color>
     <color name="bar_color">#e6e6e6</color>
     <color name="bg_main">@color/white</color>
     <color name="refresh">@color/black</color>