1145873331@qq.com преди 6 години
родител
ревизия
98f9c39808

+ 2 - 7
app/build.gradle

@ -97,11 +97,6 @@ android {
97 97
//        // digestalg = "SHA-256"
98 98
//    }
99 99
    buildTypes {
100
//        release {
101
//            minifyEnabled false
102
//            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
103
//            signingConfig signingConfigs.config
104
//        }
105 100
        debug {
106 101
            //是否优化zip
107 102
            zipAlignEnabled true
@ -256,7 +251,7 @@ dependencies {
256 251
    compile 'com.zhy:okhttputils:2.4.1'
257 252
    compile 'com.android.support:support-v4:26.1.0'
258 253
    compile 'com.google.android.gms:play-services-appindexing:9.4.0'
259
    compile 'com.android.support.constraint:constraint-layout:2.0.0-alpha3'
254
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
260 255
    compile 'com.zhy:flowlayout-lib:1.0.3'
261 256
    compile 'com.squareup:otto:+'
262 257
    compile 'org.greenrobot:greendao:3.2.0'
@ -271,7 +266,7 @@ dependencies {
271 266
    compile 'com.nineoldandroids:library:2.4.0'
272 267
    compile 'com.github.bumptech.glide:glide:4.1.1'
273 268
    compile 'me.iwf.photopicker:PhotoPicker:0.9.12@aar'
274
    compile 'top.zibin:Luban:1.1.2'
269
//    compile 'top.zibin:Luban:1.1.2'
275 270
    compile 'com.ms-square:expandableTextView:0.1.4'
276 271
    compile 'io.reactivex:rxjava:1.1.0'
277 272
    compile 'io.reactivex:rxandroid:1.1.0'

+ 5 - 0
app/src/main/AndroidManifest.xml

@ -990,6 +990,11 @@
990 990
            android:name=".activity.VideoDetaislActivity"
991 991
            android:screenOrientation="portrait"
992 992
            android:windowSoftInputMode="adjustPan" />
993
        <activity
994
            android:name=".activity.PublishTopicActivity"
995
            android:screenOrientation="portrait"
996
            android:windowSoftInputMode="adjustPan" />
997
        <activity android:name=".activity.TopicActivity" />
993 998
    </application>
994 999
995 1000
</manifest>

+ 45 - 6
app/src/main/java/com/electric/chargingpile/activity/PublishItemsActivity.java

@ -1,21 +1,32 @@
1 1
package com.electric.chargingpile.activity;
2 2
3
import android.content.Intent;
3 4
import android.os.Bundle;
4 5
import android.support.v7.app.AppCompatActivity;
5 6
import android.view.View;
7
import android.widget.ImageView;
8
import android.widget.LinearLayout;
9
import android.widget.RelativeLayout;
10
import android.widget.TextView;
6 11
7 12
import com.electric.chargingpile.R;
8 13
import com.electric.chargingpile.util.BarColorUtil;
9 14
10 15
/**
11
 *
12
 * @deprecated 发布类型选择页
13 16
 * @author dxh
14
 *
15
 *
16
 * */
17
 * @deprecated 发布类型选择页
18
 */
17 19
public class PublishItemsActivity extends AppCompatActivity implements View.OnClickListener {
18 20
21
    private RelativeLayout mBottomView;
22
    private TextView mRulePublish;
23
    private ImageView mSharePublishClose;
24
    private LinearLayout mPublishPicture;
25
    private LinearLayout mPublishVideo;
26
    private LinearLayout mPublishQa;
27
    private ImageView mShareScanIcon;
28
    private TextView mShareScanIconInfo;
29
19 30
    @Override
20 31
    protected void onCreate(Bundle savedInstanceState) {
21 32
        super.onCreate(savedInstanceState);
@ -26,10 +37,38 @@ public class PublishItemsActivity extends AppCompatActivity implements View.OnCl
26 37
27 38
    private void initView() {
28 39
40
        mBottomView = (RelativeLayout) findViewById(R.id.bottom_view);
41
        mRulePublish = (TextView) findViewById(R.id.rule_publish);
42
        mSharePublishClose = (ImageView) findViewById(R.id.share_publish_close);
43
        mPublishPicture = (LinearLayout) findViewById(R.id.publish_picture);
44
        mPublishVideo = (LinearLayout) findViewById(R.id.publish_video);
45
        mPublishQa = (LinearLayout) findViewById(R.id.publish_qa);
46
        mShareScanIcon = (ImageView) findViewById(R.id.share_scan_icon);
47
        mShareScanIconInfo = (TextView) findViewById(R.id.share_scan_icon_info);
48
49
        mSharePublishClose.setOnClickListener(this);
50
        mPublishPicture.setOnClickListener(this);
51
        mPublishVideo.setOnClickListener(this);
29 52
    }
30 53
54
    Intent intent = new Intent();
55
31 56
    @Override
32 57
    public void onClick(View v) {
33
        switch (v.getId()){}
58
        switch (v.getId()) {
59
            case R.id.publish_picture:
60
                intent.setClass(this,PublishTopicActivity.class);
61
                startActivity(intent);
62
                break;
63
            case R.id.publish_video:
64
                intent.setClass(this,PublishTopicActivity.class);
65
                startActivity(intent);
66
                break;
67
            case R.id.share_publish_close:
68
                finish();
69
                break;
70
            default:
71
                break;
72
        }
34 73
    }
35 74
}

+ 139 - 0
app/src/main/java/com/electric/chargingpile/activity/PublishTopicActivity.java

@ -0,0 +1,139 @@
1
package com.electric.chargingpile.activity;
2
3
import android.Manifest;
4
import android.app.Activity;
5
import android.content.Context;
6
import android.content.Intent;
7
import android.content.pm.PackageInfo;
8
import android.content.pm.PackageManager;
9
import android.graphics.Bitmap;
10
import android.graphics.BitmapFactory;
11
import android.net.Uri;
12
import android.os.Bundle;
13
import android.os.Environment;
14
import android.provider.MediaStore;
15
import android.view.View;
16
import android.view.View.OnClickListener;
17
import android.widget.EditText;
18
import android.widget.ImageView;
19
import android.widget.TextView;
20
import android.widget.Toast;
21
22
import com.electric.chargingpile.R;
23
import com.electric.chargingpile.util.BarColorUtil;
24
import com.electric.chargingpile.view.MyGridView;
25
import com.umeng.analytics.MobclickAgent;
26
27
import java.io.File;
28
import java.io.FileOutputStream;
29
import java.io.IOException;
30
import java.util.List;
31
32
import pub.devrel.easypermissions.AfterPermissionGranted;
33
import pub.devrel.easypermissions.AppSettingsDialog;
34
import pub.devrel.easypermissions.EasyPermissions;
35
36
public class PublishTopicActivity extends Activity implements OnClickListener, EasyPermissions.PermissionCallbacks {
37
    private ImageView ivBack, icon_scan;
38
    private TextView tvVersion, tv_banquan, tv_call, android;
39
    private String app_version;
40
    Context mContext;
41
    private static final int RC_CALL_PERM = 123;
42
    private ImageView mPublishtopicBack;
43
    private TextView mPublishtopicPublish;
44
    private EditText mPublishtopicCon;
45
    private MyGridView mPublishtopicGv;
46
    private TextView mPublishtopicChooseTopic;
47
    private TextView mPublishtopicChoosePreview;
48
    private TextView mPublishtopicWordNum;
49
50
51
    @Override
52
    protected void onCreate(Bundle savedInstanceState) {
53
        super.onCreate(savedInstanceState);
54
        setContentView(R.layout.activity_publishtopic);
55
        mContext = this;
56
        BarColorUtil.initStatusBarColor(PublishTopicActivity.this);
57
        initView();
58
    }
59
60
    private void initView() {
61
        mPublishtopicBack = (ImageView) findViewById(R.id.publishtopic_back);
62
        mPublishtopicPublish = (TextView) findViewById(R.id.publishtopic_publish);
63
        mPublishtopicCon = (EditText) findViewById(R.id.publishtopic_con);
64
        mPublishtopicGv = (MyGridView) findViewById(R.id.publishtopic_gv);
65
        mPublishtopicChooseTopic = (TextView) findViewById(R.id.publishtopic_choose_topic);
66
        mPublishtopicChoosePreview = (TextView) findViewById(R.id.publishtopic_choose_preview);
67
        mPublishtopicWordNum = (TextView) findViewById(R.id.publishtopic_word_num);
68
69
        mPublishtopicBack.setOnClickListener(this);
70
        mPublishtopicPublish.setOnClickListener(this);
71
        mPublishtopicChoosePreview.setOnClickListener(this);
72
        mPublishtopicChooseTopic.setOnClickListener(this);
73
    }
74
75
76
    @Override
77
    public void onClick(View v) {
78
        switch (v.getId()) {
79
            case R.id.publishtopic_back:
80
                finish();
81
                break;
82
            case R.id.publishtopic_publish:
83
                telTask();
84
                break;
85
86
            case R.id.publishtopic_choose_topic:
87
                startActivity(new Intent(this, TopicActivity.class));
88
                break;
89
            case R.id.publishtopic_choose_preview:
90
                break;
91
            default:
92
                break;
93
        }
94
    }
95
96
    @Override
97
    protected void onResume() {
98
        super.onResume();
99
        MobclickAgent.onResume(this);
100
    }
101
102
    @Override
103
    protected void onPause() {
104
        super.onPause();
105
        MobclickAgent.onPause(this);
106
    }
107
108
109
    @Override
110
    public void onPermissionsGranted(int requestCode, List<String> perms) {
111
112
    }
113
114
    @Override
115
    public void onPermissionsDenied(int requestCode, List<String> perms) {
116
        if (EasyPermissions.somePermissionPermanentlyDenied(this, perms)) {
117
            new AppSettingsDialog.Builder(PublishTopicActivity.this,
118
                    "该功能需要开启拨号权限,是否前往开启?").build().show();
119
        }
120
    }
121
122
    private boolean hasCallPhonePermission() {
123
        return EasyPermissions.hasPermissions(this, Manifest.permission.CALL_PHONE);
124
    }
125
126
    @AfterPermissionGranted(RC_CALL_PERM)
127
    public void telTask() {
128
        if (hasCallPhonePermission()) {
129
130
        } else {
131
            // Ask for one permission
132
            EasyPermissions.requestPermissions(
133
                    this,
134
                    "该功能需要开启拨号权限,是否前往开启?",
135
                    RC_CALL_PERM,
136
                    Manifest.permission.CALL_PHONE);
137
        }
138
    }
139
}

+ 232 - 0
app/src/main/java/com/electric/chargingpile/activity/TopicActivity.java

@ -0,0 +1,232 @@
1
package com.electric.chargingpile.activity;
2
3
import android.Manifest;
4
import android.app.Activity;
5
import android.content.Context;
6
import android.os.Bundle;
7
import android.support.v7.widget.LinearLayoutManager;
8
import android.support.v7.widget.RecyclerView;
9
import android.text.Editable;
10
import android.text.TextWatcher;
11
import android.util.Log;
12
import android.view.View;
13
import android.view.View.OnClickListener;
14
import android.widget.EditText;
15
import android.widget.ImageView;
16
import android.widget.LinearLayout;
17
import android.widget.RelativeLayout;
18
import android.widget.TextView;
19
import android.widget.Toast;
20
21
import com.electric.chargingpile.R;
22
import com.electric.chargingpile.adapter.TopicAdapter;
23
import com.electric.chargingpile.application.MainApplication;
24
import com.electric.chargingpile.data.TalkRecommendBean;
25
import com.electric.chargingpile.util.BarColorUtil;
26
import com.electric.chargingpile.util.JsonUtils;
27
import com.electric.chargingpile.util.ToastUtil;
28
import com.electric.chargingpile.view.MyGridView;
29
import com.umeng.analytics.MobclickAgent;
30
import com.zhy.http.okhttp.OkHttpUtils;
31
import com.zhy.http.okhttp.callback.StringCallback;
32
33
import java.util.ArrayList;
34
import java.util.HashMap;
35
import java.util.List;
36
import java.util.Map;
37
38
import okhttp3.Call;
39
import pub.devrel.easypermissions.AfterPermissionGranted;
40
import pub.devrel.easypermissions.AppSettingsDialog;
41
import pub.devrel.easypermissions.EasyPermissions;
42
43
/**
44
 * @author lenovo
45
 */
46
public class TopicActivity extends Activity implements OnClickListener, EasyPermissions.PermissionCallbacks {
47
    private ImageView mTopicBack;
48
    private RelativeLayout mTopicInputLl;
49
    private View mTopicInputStart;
50
    private View mTopicInputEnd;
51
    private EditText mTopicCon;
52
    private View mTopicInputBelowLine;
53
    private RecyclerView mTopicRv;
54
    private TextView mTopicNotCon;
55
    private LinearLayout mTopicRetryLl;
56
    private TextView mTopicRetry;
57
58
    private TopicAdapter topicAdapter;
59
60
61
    @Override
62
    protected void onCreate(Bundle savedInstanceState) {
63
        super.onCreate(savedInstanceState);
64
        setContentView(R.layout.activity_topic);
65
        BarColorUtil.initStatusBarColor(TopicActivity.this);
66
        initView();
67
        recommentTopic();
68
    }
69
70
    private void initView() {
71
        mTopicBack = (ImageView) findViewById(R.id.topic_back);
72
        mTopicInputLl = (RelativeLayout) findViewById(R.id.topic_input_ll);
73
        mTopicInputStart = (View) findViewById(R.id.topic_input_start);
74
        mTopicInputEnd = (View) findViewById(R.id.topic_input_end);
75
        mTopicCon = (EditText) findViewById(R.id.topic_con);
76
        mTopicInputBelowLine = (View) findViewById(R.id.topic_input_below_line);
77
        mTopicRv = (RecyclerView) findViewById(R.id.topic_rv);
78
        mTopicNotCon = (TextView) findViewById(R.id.topic_not_con);
79
        mTopicRetryLl = (LinearLayout) findViewById(R.id.topic_retry_ll);
80
        mTopicRetry = (TextView) findViewById(R.id.topic_retry);
81
        mTopicRv.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, true));
82
83
        topicAdapter = new TopicAdapter(this);
84
        mTopicRv.setAdapter(topicAdapter);
85
86
87
        mTopicBack.setOnClickListener(this);
88
        mTopicCon.addTextChangedListener(new TextWatcher() {
89
            @Override
90
            public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
91
92
            }
93
94
            @Override
95
            public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
96
                if (i2 == 0) {
97
                    recommentTopic();
98
                } else {
99
                    searchTopic(charSequence);
100
                }
101
            }
102
103
            @Override
104
            public void afterTextChanged(Editable editable) {
105
106
            }
107
        });
108
    }
109
110
    private void recommentTopic() {
111
        String url = MainApplication.urlNew + "/topic/info/list.do";
112
//        Log.e(TAG, "getQAData: "+url );
113
        Map<String, String> map = new HashMap<>();
114
        map.put("selected", "1");
115
        if (MainApplication.isLogin()) {
116
            map.put("user_id", MainApplication.userId);
117
        }
118
        OkHttpUtils.get().params(map).url(url).build().connTimeOut(6000).readTimeOut(6000).execute(new StringCallback() {
119
            @Override
120
            public void onError(Call call, Exception e) {
121
            }
122
123
            @Override
124
            public void onResponse(String response) {
125
                String rtnCode = JsonUtils.getKeyResult(response, "code");
126
                if ("1000".equals(rtnCode)) {
127
                    String rtnMsg = JsonUtils.getKeyResult(response, "data");
128
                    ArrayList<TalkRecommendBean> qadata = (ArrayList<TalkRecommendBean>) JsonUtils.parseToObjectList(rtnMsg, TalkRecommendBean.class);
129
                    topicAdapter.setType(TopicAdapter.RECOMENT_TYPE);
130
131
                    topicAdapter.addData(qadata);
132
                }
133
            }
134
        });
135
    }
136
137
138
    private void searchTopic(CharSequence charSequence) {
139
140
        String url = MainApplication.urlNew + "/topic/search.do";
141
        Map<String, String> map = new HashMap<>();
142
        map.put("key", charSequence.toString());
143
144
        OkHttpUtils
145
                .get()
146
                .params(map)
147
                .url(url)
148
                .build()
149
                .connTimeOut(6000)
150
                .readTimeOut(6000)
151
                .execute(new StringCallback() {
152
                    @Override
153
                    public void onError(Call call, Exception e) {
154
                        ToastUtil.showToast(TopicActivity.this, "加载失败,请重试", Toast.LENGTH_SHORT);
155
156
                    }
157
158
                    @Override
159
                    public void onResponse(String response) {
160
                        String rtnCode = JsonUtils.getKeyResult(response, "code");
161
                        if ("1000".equals(rtnCode)) {
162
                            String rtnMsg = JsonUtils.getKeyResult(response, "data");
163
                            List<TalkRecommendBean> qadata = JsonUtils
164
                                    .parseToObjectList(rtnMsg, TalkRecommendBean.class);
165
                            topicAdapter.setType(TopicAdapter.RECOMENT_ITEM);
166
                            topicAdapter.addData(qadata);
167
                        }
168
                    }
169
                });
170
    }
171
172
173
    @Override
174
    public void onClick(View v) {
175
        switch (v.getId()) {
176
            case R.id.topic_back:
177
                finish();
178
                break;
179
            case R.id.publishtopic_publish:
180
                telTask();
181
                break;
182
            default:
183
                break;
184
        }
185
    }
186
187
    @Override
188
    protected void onResume() {
189
        super.onResume();
190
        MobclickAgent.onResume(this);
191
    }
192
193
    @Override
194
    protected void onPause() {
195
        super.onPause();
196
        MobclickAgent.onPause(this);
197
    }
198
199
200
    @Override
201
    public void onPermissionsGranted(int requestCode, List<String> perms) {
202
203
    }
204
205
    @Override
206
    public void onPermissionsDenied(int requestCode, List<String> perms) {
207
        if (EasyPermissions.somePermissionPermanentlyDenied(this, perms)) {
208
            new AppSettingsDialog.Builder(TopicActivity.this,
209
                    "该功能需要开启拨号权限,是否前往开启?").build().show();
210
        }
211
    }
212
213
    private boolean hasCallPhonePermission() {
214
        return EasyPermissions.hasPermissions(this, Manifest.permission.CALL_PHONE);
215
    }
216
217
    final int RC_CALL_PERM = 123;
218
219
    @AfterPermissionGranted(RC_CALL_PERM)
220
    public void telTask() {
221
        if (hasCallPhonePermission()) {
222
223
        } else {
224
            // Ask for one permission
225
            EasyPermissions.requestPermissions(
226
                    this,
227
                    "该功能需要开启拨号权限,是否前往开启?",
228
                    RC_CALL_PERM,
229
                    Manifest.permission.CALL_PHONE);
230
        }
231
    }
232
}

+ 152 - 0
app/src/main/java/com/electric/chargingpile/adapter/TopicAdapter.java

@ -0,0 +1,152 @@
1
package com.electric.chargingpile.adapter;
2
3
import android.app.Activity;
4
import android.content.Context;
5
import android.graphics.Bitmap;
6
import android.support.annotation.NonNull;
7
import android.support.v7.widget.RecyclerView;
8
import android.text.TextUtils;
9
import android.util.DisplayMetrics;
10
import android.util.Log;
11
import android.view.LayoutInflater;
12
import android.view.View;
13
import android.view.View.OnClickListener;
14
import android.view.ViewGroup;
15
import android.widget.BaseAdapter;
16
import android.widget.Button;
17
import android.widget.ImageView;
18
import android.widget.TextView;
19
import android.widget.ToggleButton;
20
21
import com.electric.chargingpile.R;
22
import com.electric.chargingpile.data.TalkRecommendBean;
23
import com.electric.chargingpile.util.BitmapCache;
24
import com.electric.chargingpile.util.BitmapCache.ImageCallback;
25
import com.electric.chargingpile.util.CircleTransform;
26
import com.electric.chargingpile.util.ImageItem;
27
import com.electric.chargingpile.util.Res;
28
import com.squareup.picasso.Picasso;
29
30
import java.util.ArrayList;
31
import java.util.List;
32
33
public class TopicAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
34
    private ArrayList<TalkRecommendBean> dataList = new ArrayList<>();
35
    private Context mContext;
36
    private int type = 0;
37
    public final static int RECOMENT_TYPE = 0;
38
    public final static int RECOMENT_ITEM = 1;
39
40
    public TopicAdapter(Context c) {
41
        mContext = c;
42
    }
43
44
45
    @Override
46
    public int getItemViewType(int position) {
47
        if (type == RECOMENT_TYPE && position == 0) {
48
            return RECOMENT_TYPE;
49
        } else {
50
            return RECOMENT_ITEM;
51
        }
52
    }
53
54
    @NonNull
55
    @Override
56
    public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
57
        View view;
58
        if (viewType == RECOMENT_TYPE) {
59
            view = LayoutInflater.from(mContext).inflate(R.layout.title_item_topic, null);
60
            return new TitleViewHolder(view);
61
        } else if (viewType == RECOMENT_ITEM) {
62
            view = LayoutInflater.from(mContext).inflate(R.layout.item_topic, null);
63
            return new ItemViewHolder(view);
64
        }
65
        return null;
66
    }
67
68
    @Override
69
    public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
70
        int itemViewType = getItemViewType(position);
71
        if (itemViewType == RECOMENT_TYPE) {
72
            TitleViewHolder titleViewHolder = (TitleViewHolder) holder;
73
        } else {
74
            ItemViewHolder itemViewHolder = (ItemViewHolder) holder;
75
            TalkRecommendBean item = getItem(position);
76
            itemViewHolder.mItemTopicName.setText(item.name);
77
78
79
            if (TextUtils.isEmpty(item.coverImgUrl)) {
80
                Picasso.with(mContext)
81
                        .load(R.drawable.icon_face2_0)
82
                        .placeholder(R.drawable.icon_face2_0)
83
                        .error(R.drawable.icon_face2_0)
84
                        .into(itemViewHolder.mItemTopicImg);
85
            } else {
86
                Picasso.with(mContext)
87
                        .load(item.headImgUrl)
88
                        .placeholder(R.drawable.icon_face2_0)
89
                        .error(R.drawable.icon_face2_0)
90
                        .into(itemViewHolder.mItemTopicImg);
91
            }
92
        }
93
    }
94
95
96
    private TalkRecommendBean getItem(int position) {
97
        if (type == RECOMENT_TYPE) {
98
            return dataList.get(position - 1);
99
        } else {
100
            return dataList.get(position);
101
        }
102
    }
103
104
105
    @Override
106
    public int getItemCount() {
107
        if (type == RECOMENT_TYPE) {
108
            return dataList.size() + 1;
109
        } else {
110
            return dataList.size();
111
        }
112
    }
113
114
    public void setType(int i) {
115
        type = i;
116
    }
117
118
    public void addData(List<TalkRecommendBean> qadata) {
119
        if (qadata != null && qadata.size() > 0) {
120
            dataList.addAll(qadata);
121
            notifyDataSetChanged();
122
        }
123
    }
124
125
    /**
126
     * 存放列表项控件句柄
127
     */
128
    static class TitleViewHolder extends RecyclerView.ViewHolder {
129
        public TitleViewHolder(View itemView) {
130
            super(itemView);
131
        }
132
    }
133
134
135
    /**
136
     * 存放列表项控件句柄
137
     */
138
    static class ItemViewHolder extends RecyclerView.ViewHolder {
139
140
        private ImageView mItemTopicImg;
141
        private TextView mItemTopicName;
142
143
        public ItemViewHolder(View itemView) {
144
            super(itemView);
145
146
            mItemTopicImg = (ImageView) itemView.findViewById(R.id.item_topic_img);
147
            mItemTopicName = (TextView) itemView.findViewById(R.id.item_topic_name);
148
149
        }
150
    }
151
152
}

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

@ -308,7 +308,6 @@ public class SvVideoShowView implements View.OnClickListener {
308 308
    }
309 309
310 310
    public void updateView() {
311
//        long targetId = talkRecommendBean.targetId;
312 311
313 312
    }
314 313

+ 0 - 24
app/src/main/java/com/electric/chargingpile/fragment/TalkRecommendFragment.java

@ -116,14 +116,6 @@ public class TalkRecommendFragment extends Fragment implements View.OnClickListe
116 116
        layoutAdapter.setOnRecyclerItemClickListener(new RecyclerItemTypeClickListener() {
117 117
            @Override
118 118
            public void onItemClickListener(int position, int type) {
119
//                position--;
120
//                ArrayList<TalkRecommendBean> talkRecommendBeans = layoutAdapter.getCurrentData();
121
//                String targetId = talkRecommendBeans.get(position).targetId+"";
122
//                String targetType = talkRecommendBeans.get(position).targetType+"";
123
//                Intent intent = new Intent(getActivity(), ZoomingPhotoTextActivity.class);
124
//                intent.putExtra("targetId", targetId);
125
//                intent.putExtra("targetType", targetType);
126
//                startActivity(intent);
127 119
                int pos = position - 1;
128 120
                Intent intent = new Intent(getActivity(), VideoDetaislActivity.class);
129 121
                ArrayList<TalkRecommendBean> talkRecommendBeans = layoutAdapter.getCurrentData();
@ -133,22 +125,6 @@ public class TalkRecommendFragment extends Fragment implements View.OnClickListe
133 125
            }
134 126
        });
135 127
136
//        layoutAdapter.setOnItemClickListener(new LayoutAdapter.OnItemClickListener() {
137
//
138
//            @Override
139
//            public void onItemClick(View view) {
140
//                ArrayList<TalkRecommendBean> talkRecommendBeans = layoutAdapter.getCurrentData();
141
//
142
//                int pos = recyclerView.getChildAdapterPosition(view);
143
//                Toast.makeText(getContext(), talkRecommendBeans.get(pos).toString(), Toast.LENGTH_SHORT).show();
144
//                Intent intent = new Intent(getActivity(), VideoDetaislActivity.class);
145
//                intent.putExtra("list", talkRecommendBeans);
146
//                intent.putExtra("pos", pos);
147
//
148
//                startActivity(intent);
149
//
150
//            }
151
//        });
152 128
153 129
        initScrollListener();
154 130

+ 7 - 0
app/src/main/res/drawable/topic_search_con.xml

@ -0,0 +1,7 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<shape xmlns:android="http://schemas.android.com/apk/res/android"
3
    android:shape="rectangle">
4
5
    <solid android:color="#e8e8e8" />
6
    <corners android:radius="16dp" />
7
</shape>

+ 118 - 0
app/src/main/res/layout/activity_publishtopic.xml

@ -0,0 +1,118 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
3
    android:layout_width="match_parent"
4
    android:layout_height="match_parent">
5
6
    <ImageView
7
        android:id="@+id/publishtopic_back"
8
        android:layout_width="44dp"
9
        android:layout_height="44dp"
10
        android:background="#000" />
11
12
    <TextView
13
        android:layout_width="wrap_content"
14
        android:layout_height="44dp"
15
        android:layout_centerHorizontal="true"
16
        android:gravity="center_vertical"
17
        android:text="发布"
18
        android:textColor="#222"
19
        android:textSize="18sp" />
20
21
    <TextView
22
        android:id="@+id/publishtopic_publish"
23
        android:layout_width="50dp"
24
        android:layout_height="25dp"
25
        android:layout_alignParentEnd="true"
26
        android:layout_centerHorizontal="true"
27
        android:layout_marginTop="@dimen/ui_10_dip"
28
        android:layout_marginEnd="25dp"
29
        android:background="#02B637"
30
        android:gravity="center"
31
        android:text="发布"
32
        android:textColor="#fff"
33
        android:textSize="16sp" />
34
35
    <View
36
        android:layout_width="match_parent"
37
        android:layout_height="1dp"
38
        android:layout_below="@+id/publishtopic_back"
39
        android:background="#ddd" />
40
41
    <ScrollView
42
        android:layout_width="match_parent"
43
        android:layout_height="wrap_content"
44
        android:layout_below="@+id/publishtopic_back">
45
46
        <LinearLayout
47
            android:layout_width="match_parent"
48
            android:layout_height="wrap_content"
49
            android:orientation="vertical"
50
            android:padding="15dp">
51
52
            <EditText
53
                android:id="@+id/publishtopic_con"
54
                android:layout_width="match_parent"
55
                android:layout_height="wrap_content"
56
                android:background="@null"
57
                android:gravity="top"
58
                android:hint="聊聊你的想法......"
59
                android:minHeight="120dp"
60
                android:textColorHint="#555555"
61
                android:textSize="14sp" />
62
63
            <com.electric.chargingpile.view.MyGridView
64
                android:id="@+id/publishtopic_gv"
65
                android:layout_width="match_parent"
66
                android:layout_height="wrap_content" />
67
        </LinearLayout>
68
    </ScrollView>
69
70
71
    <TextView
72
        android:id="@+id/publishtopic_choose_topic"
73
        android:layout_width="wrap_content"
74
        android:layout_height="30dp"
75
        android:layout_alignParentBottom="true"
76
        android:layout_marginStart="15dp"
77
        android:layout_marginBottom="10dp"
78
        android:background="#EE12E812"
79
        android:gravity="center_vertical"
80
        android:orientation="horizontal"
81
        android:paddingStart="@dimen/ui_10_dip"
82
        android:paddingEnd="@dimen/ui_10_dip"
83
        android:text="# 选择话题"
84
        android:textColor="#555"
85
        android:textSize="14sp" />
86
87
    <TextView
88
        android:id="@+id/publishtopic_choose_preview"
89
        android:layout_width="wrap_content"
90
        android:layout_height="49dp"
91
        android:layout_alignParentEnd="true"
92
        android:layout_alignParentBottom="true"
93
        android:layout_marginStart="11dp"
94
        android:gravity="center_vertical"
95
        android:orientation="horizontal"
96
        android:paddingStart="@dimen/ui_10_dip"
97
        android:paddingEnd="15dp"
98
        android:text="预览"
99
        android:textColor="#b2b2b2"
100
        android:textSize="14sp" />
101
102
    <TextView
103
        android:id="@+id/publishtopic_word_num"
104
        android:layout_width="wrap_content"
105
        android:layout_height="49dp"
106
        android:layout_alignParentBottom="true"
107
        android:layout_toStartOf="@+id/publishtopic_choose_preview"
108
        android:gravity="center_vertical"
109
        android:text="0/500"
110
        android:textSize="14sp" />
111
112
113
    <View
114
        android:layout_width="match_parent"
115
        android:layout_height="1dp"
116
        android:layout_above="@+id/publishtopic_choose_preview"
117
        android:background="#ddd" />
118
</RelativeLayout>

+ 127 - 0
app/src/main/res/layout/activity_topic.xml

@ -0,0 +1,127 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
3
    android:layout_width="match_parent"
4
    android:layout_height="match_parent"
5
    android:background="#fff">
6
7
    <ImageView
8
        android:id="@+id/topic_back"
9
        android:layout_width="44dp"
10
        android:layout_height="44dp"
11
        android:background="#000" />
12
13
    <TextView
14
        android:layout_width="wrap_content"
15
        android:layout_height="44dp"
16
        android:layout_centerHorizontal="true"
17
        android:gravity="center_vertical"
18
        android:text="发布"
19
        android:textColor="#222"
20
        android:textSize="18sp" />
21
22
    <View
23
        android:layout_width="match_parent"
24
        android:layout_height="1dp"
25
        android:layout_below="@+id/topic_back"
26
        android:background="#ddd" />
27
28
    <View
29
        android:layout_width="match_parent"
30
        android:layout_height="60dp"
31
        android:layout_below="@+id/topic_back" />
32
33
    <RelativeLayout
34
        android:id="@+id/topic_input_ll"
35
        android:layout_width="match_parent"
36
        android:layout_height="30dp"
37
        android:layout_below="@+id/topic_back"
38
        android:layout_margin="15dp"
39
        android:background="@drawable/topic_search_con"
40
        android:orientation="horizontal">
41
42
        <View
43
            android:id="@+id/topic_input_start"
44
            android:layout_width="14dp"
45
            android:layout_height="14dp"
46
            android:layout_centerVertical="true"
47
            android:layout_marginStart="8dp"
48
            android:layout_marginEnd="4dp"
49
            android:background="#b2de" />
50
51
        <View
52
            android:id="@+id/topic_input_end"
53
            android:layout_width="14dp"
54
            android:layout_height="14dp"
55
            android:layout_alignParentEnd="true"
56
            android:layout_centerVertical="true"
57
            android:layout_marginStart="4dp"
58
            android:layout_marginEnd="8dp"
59
            android:background="#b2de" />
60
61
        <EditText
62
            android:id="@+id/topic_con"
63
            android:layout_width="match_parent"
64
            android:layout_height="match_parent"
65
            android:layout_toStartOf="@+id/topic_input_end"
66
            android:layout_toEndOf="@+id/topic_input_start"
67
            android:background="@null"
68
            android:gravity="center_vertical"
69
            android:hint="请输入你感兴趣的话题"
70
            android:textColorHint="#555555"
71
            android:textSize="14sp" />
72
    </RelativeLayout>
73
74
    <View
75
        android:id="@+id/topic_input_below_line"
76
        android:layout_width="match_parent"
77
        android:layout_height="10dp"
78
        android:layout_below="@+id/topic_input_ll"
79
        android:background="#f4f4f4" />
80
81
    <android.support.v7.widget.RecyclerView
82
        android:id="@+id/topic_rv"
83
        android:layout_width="match_parent"
84
        android:layout_height="match_parent"
85
        android:layout_below="@+id/topic_input_below_line" />
86
87
    <TextView
88
        android:id="@+id/topic_not_con"
89
        android:layout_width="match_parent"
90
        android:layout_height="match_parent"
91
        android:layout_below="@+id/topic_input_below_line"
92
        android:gravity="center"
93
        android:text="还没有任何内容哦,快来抢沙发~"
94
        android:textColor="#555"
95
        android:textSize="14sp"
96
        android:visibility="gone" />
97
98
    <LinearLayout
99
        android:id="@+id/topic_retry_ll"
100
        android:layout_width="match_parent"
101
        android:layout_height="match_parent"
102
        android:layout_below="@+id/topic_input_below_line"
103
        android:gravity="center"
104
        android:orientation="vertical"
105
        android:visibility="gone">
106
107
108
        <TextView
109
            android:layout_width="wrap_content"
110
            android:layout_height="wrap_content"
111
            android:layout_marginBottom="20dp"
112
            android:text="网络跑调了,请重试~"
113
            android:textColor="#555"
114
            android:textSize="14sp" />
115
116
        <TextView
117
            android:id="@+id/topic_retry"
118
            android:layout_width="123dp"
119
            android:layout_height="40dp"
120
            android:background="@drawable/bg_write_stroke"
121
            android:gravity="center"
122
            android:text="点击重试"
123
            android:textColor="#555"
124
            android:textSize="14sp" />
125
126
    </LinearLayout>
127
</RelativeLayout>

+ 28 - 0
app/src/main/res/layout/item_topic.xml

@ -0,0 +1,28 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
3
    android:layout_width="match_parent"
4
    android:layout_height="60dp"
5
    android:paddingStart="15dp"
6
    android:paddingEnd="15dp">
7
8
    <ImageView
9
        android:id="@+id/item_topic_img"
10
        android:layout_width="50dp"
11
        android:layout_height="43dp"
12
        android:layout_centerVertical="true"
13
        android:background="#000" />
14
15
    <TextView
16
        android:id="@+id/item_topic_name"
17
        android:layout_width="match_parent"
18
        android:layout_height="wrap_content"
19
        android:layout_centerVertical="true"
20
        android:layout_marginStart="10dp"
21
        android:layout_toEndOf="@+id/item_topic_img"
22
        android:ellipsize="end"
23
        android:maxLines="2"
24
        android:text="adadasd"
25
        android:textColor="#444444"
26
        android:textSize="14sp" />
27
28
</RelativeLayout>

+ 17 - 0
app/src/main/res/layout/title_item_topic.xml

@ -0,0 +1,17 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
3
    xmlns:app="http://schemas.android.com/apk/res-auto"
4
    android:layout_width="match_parent"
5
    android:layout_height="50dp">
6
7
    <TextView
8
        android:layout_width="wrap_content"
9
        android:layout_height="wrap_content"
10
        android:layout_marginStart="15dp"
11
        android:text="推荐话题"
12
        android:textColor="#444444"
13
        android:textSize="15sp"
14
        app:layout_constraintBottom_toTopOf="parent"
15
        app:layout_constraintStart_toStartOf="parent"
16
        app:layout_constraintTop_toBottomOf="parent" />
17
</android.support.constraint.ConstraintLayout>