huyuguo 5 gadi atpakaļ
vecāks
revīzija
30036c835b

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

@ -15,6 +15,7 @@ import android.support.v4.app.FragmentManager;
15 15
import android.support.v4.graphics.ColorUtils;
16 16
import android.support.v4.view.ViewPager;
17 17
import android.support.v7.app.AppCompatActivity;
18
import android.util.Log;
18 19
import android.view.KeyEvent;
19 20
import android.view.View;
20 21
import android.view.ViewGroup;
@ -37,6 +38,7 @@ import com.electric.chargingpile.fragment.QaActivityFragment;
37 38
import com.electric.chargingpile.iview.RecyclerItemTypeClickListener;
38 39
import com.electric.chargingpile.manager.ProfileManager;
39 40
import com.electric.chargingpile.util.BarColorUtil;
41
import com.electric.chargingpile.util.Util;
40 42
import com.umeng.analytics.MobclickAgent;
41 43
42 44
import java.util.List;
@ -47,7 +49,7 @@ import pub.devrel.easypermissions.EasyPermissions;
47 49
48 50
49 51
public class ChatActivity extends AppCompatActivity implements View.OnClickListener, EasyPermissions.PermissionCallbacks {
50
52
    private static final String TAG = "ChatActivity";
51 53
    private ViewPager chat_view_pager;
52 54
    public static boolean isRefresh = false;
53 55
    private ViewPagerFragmentAdapter viewPagerFragmentAdapter;
@ -116,7 +118,9 @@ public class ChatActivity extends AppCompatActivity implements View.OnClickListe
116 118
        chatRecommendFragment.setOnRecyclerItemClickListener(new RecyclerItemTypeClickListener() {
117 119
            @Override
118 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,8 +128,8 @@ public class ChatActivity extends AppCompatActivity implements View.OnClickListe
124 128
    }
125 129
126 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 134
        fragmentContainer.setVisibility(View.VISIBLE);
131 135
        FragmentManager fragmentManager = getSupportFragmentManager();
@ -137,8 +141,9 @@ public class ChatActivity extends AppCompatActivity implements View.OnClickListe
137 141
    }
138 142
139 143
    private void removeChatFragment() {
140
        setFullScreen(false);
141
        setStatusBarVisibility(false);
144
        Util.setFullScreen(this,false);
145
        Util.setStatusBarVisibility(this,false);
146
142 147
        fragmentContainer.setVisibility(View.GONE);
143 148
        FragmentManager fragmentManager = getSupportFragmentManager();
144 149
        if (chatFragment != null) {
@ -147,36 +152,6 @@ public class ChatActivity extends AppCompatActivity implements View.OnClickListe
147 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 155
    private void initListener() {
181 156
        act_bar_title_recommend.setOnClickListener(this);
182 157
        act_bar_title_help.setOnClickListener(this);

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

@ -52,7 +52,7 @@ public class ChatFragment extends Fragment implements View.OnClickListener {
52 52
    @Override
53 53
    public void onDestroy() {
54 54
        super.onDestroy();
55
        Log.d(TAG, "onDestroy: ");
55
56 56
    }
57 57
58 58
    @Override

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

@ -33,6 +33,7 @@ import com.electric.chargingpile.util.JsonUtils;
33 33
import com.electric.chargingpile.util.LoadingDialog;
34 34
import com.electric.chargingpile.util.NetUtil;
35 35
import com.electric.chargingpile.util.ToastUtil;
36
import com.electric.chargingpile.util.Util;
36 37
import com.zhy.http.okhttp.OkHttpUtils;
37 38
import com.zhy.http.okhttp.callback.StringCallback;
38 39
@ -77,7 +78,7 @@ public class ChatRecommendFragment extends Fragment implements View.OnClickListe
77 78
        recyclerView.setHasFixedSize(true);
78 79
        noNetView = view.findViewById(R.id.noNetView);
79 80
        noNetTry = view.findViewById(R.id.noNetTry);
80
81
        fragmentContainer = findViewById(R.id.fragment_container);
81 82
        iv_ask = view.findViewById(R.id.iv_ask);
82 83
        chat_share_info_remind = view.findViewById(R.id.chat_share_info_remind);
83 84
@ -164,6 +165,19 @@ public class ChatRecommendFragment extends Fragment implements View.OnClickListe
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 181
    public void setOnRecyclerItemClickListener(RecyclerItemTypeClickListener onRecyclerItemClickListener) {
168 182
        this.onRecyclerItemClickListener = onRecyclerItemClickListener;
169 183
    }

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

@ -274,17 +274,37 @@ public class Util {
274 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
}