huyuguo 5 ans auparavant
Parent
commit
30036c835b

+ 11 - 36
app/src/main/java/com/electric/chargingpile/activity/ChatActivity.java

15
import android.support.v4.graphics.ColorUtils;
15
import android.support.v4.graphics.ColorUtils;
16
import android.support.v4.view.ViewPager;
16
import android.support.v4.view.ViewPager;
17
import android.support.v7.app.AppCompatActivity;
17
import android.support.v7.app.AppCompatActivity;
18
import android.util.Log;
18
import android.view.KeyEvent;
19
import android.view.KeyEvent;
19
import android.view.View;
20
import android.view.View;
20
import android.view.ViewGroup;
21
import android.view.ViewGroup;
37
import com.electric.chargingpile.iview.RecyclerItemTypeClickListener;
38
import com.electric.chargingpile.iview.RecyclerItemTypeClickListener;
38
import com.electric.chargingpile.manager.ProfileManager;
39
import com.electric.chargingpile.manager.ProfileManager;
39
import com.electric.chargingpile.util.BarColorUtil;
40
import com.electric.chargingpile.util.BarColorUtil;
41
import com.electric.chargingpile.util.Util;
40
import com.umeng.analytics.MobclickAgent;
42
import com.umeng.analytics.MobclickAgent;
41
43
42
import java.util.List;
44
import java.util.List;
47
49
48
50
49
public class ChatActivity extends AppCompatActivity implements View.OnClickListener, EasyPermissions.PermissionCallbacks {
51
public class ChatActivity extends AppCompatActivity implements View.OnClickListener, EasyPermissions.PermissionCallbacks {
50
52
    private static final String TAG = "ChatActivity";
51
    private ViewPager chat_view_pager;
53
    private ViewPager chat_view_pager;
52
    public static boolean isRefresh = false;
54
    public static boolean isRefresh = false;
53
    private ViewPagerFragmentAdapter viewPagerFragmentAdapter;
55
    private ViewPagerFragmentAdapter viewPagerFragmentAdapter;
116
        chatRecommendFragment.setOnRecyclerItemClickListener(new RecyclerItemTypeClickListener() {
118
        chatRecommendFragment.setOnRecyclerItemClickListener(new RecyclerItemTypeClickListener() {
117
            @Override
119
            @Override
118
            public void onItemClickListener(int position, int index) {
120
            public void onItemClickListener(int position, int index) {
119
                addChatFragment(position);
121
                ///addChatFragment(position);
122
123
                Log.d(TAG, "onItemClickListener: ");
120
            }
124
            }
121
        });
125
        });
122
126
124
    }
128
    }
125
129
126
    private void addChatFragment(int position) {
130
    private void addChatFragment(int position) {
127
        setFullScreen(true);
128
        setStatusBarVisibility(true);
131
        Util.setFullScreen(this,true);
132
        Util.setStatusBarVisibility(this,true);
129
133
130
        fragmentContainer.setVisibility(View.VISIBLE);
134
        fragmentContainer.setVisibility(View.VISIBLE);
131
        FragmentManager fragmentManager = getSupportFragmentManager();
135
        FragmentManager fragmentManager = getSupportFragmentManager();
137
    }
141
    }
138
142
139
    private void removeChatFragment() {
143
    private void removeChatFragment() {
140
        setFullScreen(false);
141
        setStatusBarVisibility(false);
144
        Util.setFullScreen(this,false);
145
        Util.setStatusBarVisibility(this,false);
146
142
        fragmentContainer.setVisibility(View.GONE);
147
        fragmentContainer.setVisibility(View.GONE);
143
        FragmentManager fragmentManager = getSupportFragmentManager();
148
        FragmentManager fragmentManager = getSupportFragmentManager();
144
        if (chatFragment != null) {
149
        if (chatFragment != null) {
147
        chatFragment = null;
152
        chatFragment = null;
148
    }
153
    }
149
154
150
    /**
151
     * 显示隐藏状态栏,全屏不变,只在有全屏时有效
152
     * @param enable
153
     */
154
    private void setStatusBarVisibility(boolean enable) {
155
        WindowManager.LayoutParams lp = getWindow().getAttributes();
156
        if (enable) {
157
            lp.flags |= WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN;
158
        } else {
159
            lp.flags &= (~WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
160
        }
161
        getWindow().setAttributes(lp);
162
        getWindow().clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
163
    }
164
    /**
165
     * 设置是否全屏
166
     * @param enable
167
     */
168
    private void setFullScreen(boolean enable) {
169
        WindowManager.LayoutParams lp = getWindow().getAttributes();
170
        if (enable) {
171
            lp.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN;
172
        } else {
173
            lp.flags &= (~WindowManager.LayoutParams.FLAG_FULLSCREEN);
174
        }
175
        getWindow().setAttributes(lp);
176
        getWindow().clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
177
    }
178
179
180
    private void initListener() {
155
    private void initListener() {
181
        act_bar_title_recommend.setOnClickListener(this);
156
        act_bar_title_recommend.setOnClickListener(this);
182
        act_bar_title_help.setOnClickListener(this);
157
        act_bar_title_help.setOnClickListener(this);

+ 1 - 1
app/src/main/java/com/electric/chargingpile/fragment/ChatFragment.java

52
    @Override
52
    @Override
53
    public void onDestroy() {
53
    public void onDestroy() {
54
        super.onDestroy();
54
        super.onDestroy();
55
        Log.d(TAG, "onDestroy: ");
55
56
    }
56
    }
57
57
58
    @Override
58
    @Override

+ 15 - 1
app/src/main/java/com/electric/chargingpile/fragment/ChatRecommendFragment.java

33
import com.electric.chargingpile.util.LoadingDialog;
33
import com.electric.chargingpile.util.LoadingDialog;
34
import com.electric.chargingpile.util.NetUtil;
34
import com.electric.chargingpile.util.NetUtil;
35
import com.electric.chargingpile.util.ToastUtil;
35
import com.electric.chargingpile.util.ToastUtil;
36
import com.electric.chargingpile.util.Util;
36
import com.zhy.http.okhttp.OkHttpUtils;
37
import com.zhy.http.okhttp.OkHttpUtils;
37
import com.zhy.http.okhttp.callback.StringCallback;
38
import com.zhy.http.okhttp.callback.StringCallback;
38
39
77
        recyclerView.setHasFixedSize(true);
78
        recyclerView.setHasFixedSize(true);
78
        noNetView = view.findViewById(R.id.noNetView);
79
        noNetView = view.findViewById(R.id.noNetView);
79
        noNetTry = view.findViewById(R.id.noNetTry);
80
        noNetTry = view.findViewById(R.id.noNetTry);
80
81
        fragmentContainer = findViewById(R.id.fragment_container);
81
        iv_ask = view.findViewById(R.id.iv_ask);
82
        iv_ask = view.findViewById(R.id.iv_ask);
82
        chat_share_info_remind = view.findViewById(R.id.chat_share_info_remind);
83
        chat_share_info_remind = view.findViewById(R.id.chat_share_info_remind);
83
84
164
        }
165
        }
165
    }
166
    }
166
167
168
    private void addChatFragment(int position) {
169
        Util.setFullScreen(getActivity(),true);
170
        Util.setStatusBarVisibility(getActivity(),true);
171
172
        fragmentContainer.setVisibility(View.VISIBLE);
173
        FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
174
        chatFragment = (ChatFragment) fragmentManager.findFragmentById(R.id.fragment_container);
175
        if (chatFragment == null) {
176
            chatFragment = ChatFragment.newInstance(position - 1);
177
            fragmentManager.beginTransaction().add(R.id.fragment_container, chatFragment).commit();
178
        }
179
    }
180
167
    public void setOnRecyclerItemClickListener(RecyclerItemTypeClickListener onRecyclerItemClickListener) {
181
    public void setOnRecyclerItemClickListener(RecyclerItemTypeClickListener onRecyclerItemClickListener) {
168
        this.onRecyclerItemClickListener = onRecyclerItemClickListener;
182
        this.onRecyclerItemClickListener = onRecyclerItemClickListener;
169
    }
183
    }

+ 29 - 9
app/src/main/java/com/electric/chargingpile/util/Util.java

274
        return list2;
274
        return list2;
275
    }
275
    }
276

276

277
    public static void hideActionBar(AppCompatActivity activity) {
278
        if (Build.VERSION.SDK_INT >= 21) {
279
            View decorView = activity.getWindow().getDecorView();
280
            int option = View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE;
281
            decorView.setSystemUiVisibility(option);
282
            activity.getWindow().setStatusBarColor(Color.TRANSPARENT);
283

277

278
    /**
279
     * 显示隐藏状态栏,全屏不变,只在有全屏时有效
280
     *
281
     * @param enable
282
     */
283
    public static void setStatusBarVisibility(Activity activity, boolean enable) {
284
        WindowManager.LayoutParams lp = activity.getWindow().getAttributes();
285
        if (enable) {
286
            lp.flags |= WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN;
287
        } else {
288
            lp.flags &= (~WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
284
        }
289
        }
285

286
        ActionBar actionBar = activity.getSupportActionBar();
287
        actionBar.hide();
290
        activity.getWindow().setAttributes(lp);
291
        activity.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
288
    }
292
    }
289

293

294

295
    /**
296
     * 设置是否全屏
297
     *
298
     * @param enable
299
     */
300
    public static void setFullScreen(Activity activity, boolean enable) {
301
        WindowManager.LayoutParams lp = activity.getWindow().getAttributes();
302
        if (enable) {
303
            lp.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN;
304
        } else {
305
            lp.flags &= (~WindowManager.LayoutParams.FLAG_FULLSCREEN);
306
        }
307
        activity.getWindow().setAttributes(lp);
308
        activity.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
309
    }
290
}
310
}