Commit 86060592 by mReturn

知识库

parent c42f35e5
...@@ -181,6 +181,7 @@ public class Constants { ...@@ -181,6 +181,7 @@ public class Constants {
public final static int MANAGER_NOSITE_ENGINEER = 4; public final static int MANAGER_NOSITE_ENGINEER = 4;
public final static String BUNDLE = "bundle"; public final static String BUNDLE = "bundle";
public final static String ID = "id"; public final static String ID = "id";
public final static String TITLE = "title";
public final static String IDS = "ids"; public final static String IDS = "ids";
public final static String OPERATE_DETAIL = "operate_detail"; public final static String OPERATE_DETAIL = "operate_detail";
......
package com.dayu.utils;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.TextUtils;
import android.text.style.ForegroundColorSpan;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class FindUtils {
/**
* 关键字高亮变色
*
* @param color 变化的色值
* @param text 文字
* @param keyword 文字中的关键字
* @return
*/
public static SpannableString findSearch(int color, String text, String keyword) {
SpannableString s = new SpannableString(text);
Pattern p = Pattern.compile(keyword);
Matcher m = p.matcher(s);
while (m.find()) {
int start = m.start();
int end = m.end();
s.setSpan(new ForegroundColorSpan(color), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
return s;
}
/**
* 多个关键字高亮变色
*
* @param color 变化的色值
* @param text 文字
* @param keyword 文字中的关键字数组
* @return
*/
public static SpannableString findSearch(int color, String text, String...keyword) {
if (TextUtils.isEmpty(text))
return new SpannableString("");
SpannableString s = new SpannableString(text);
for (int i = 0; i < keyword.length; i++) {
Pattern p = Pattern.compile(keyword[i]);
Matcher m = p.matcher(s);
while (m.find()) {
int start = m.start();
int end = m.end();
s.setSpan(new ForegroundColorSpan(color), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
}
return s;
}
}
\ No newline at end of file
...@@ -509,6 +509,7 @@ public interface OrderService { ...@@ -509,6 +509,7 @@ public interface OrderService {
*/ */
@GET(Constants.API_7900+"/knowledge") @GET(Constants.API_7900+"/knowledge")
Observable<BaseResponse<BasePageBean<KnowledgeListBean>>> queryKnowledge(@Query("keyword") String keyword, Observable<BaseResponse<BasePageBean<KnowledgeListBean>>> queryKnowledge(@Query("keyword") String keyword,
@Query("status") int status,
@Query("page") int page, @Query("page") int page,
@Query("pageSize") int pageSize); @Query("pageSize") int pageSize);
@GET(Constants.API_7900+"/knowledge/{id}") @GET(Constants.API_7900+"/knowledge/{id}")
......
package com.dayu.order.ui.activity; package com.dayu.order.ui.activity;
import android.graphics.Color;
import android.os.Bundle; import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.LinearLayoutManager;
import android.text.TextUtils; import android.text.TextUtils;
...@@ -16,6 +17,7 @@ import com.dayu.order.api.OrderService; ...@@ -16,6 +17,7 @@ import com.dayu.order.api.OrderService;
import com.dayu.order.api.protocol.bean.KnowledgeListBean; import com.dayu.order.api.protocol.bean.KnowledgeListBean;
import com.dayu.order.databinding.ActivityKonwledgeQueryBinding; import com.dayu.order.databinding.ActivityKonwledgeQueryBinding;
import com.dayu.provider.router.RouterPath; import com.dayu.provider.router.RouterPath;
import com.dayu.utils.FindUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -71,7 +73,7 @@ public class KnowledgeActivity extends BaseActivity<SImplePresenter, ActivityKon ...@@ -71,7 +73,7 @@ public class KnowledgeActivity extends BaseActivity<SImplePresenter, ActivityKon
return; return;
} }
showDialog(); showDialog();
Api.getService(OrderService.class).queryKnowledge(keyStr, mPage, Constants.PAGESIZE) Api.getService(OrderService.class).queryKnowledge(keyStr,1, mPage, Constants.PAGESIZE)
.compose(Api.applySchedulers()).subscribe(mPresenter.baseObserver(data -> { .compose(Api.applySchedulers()).subscribe(mPresenter.baseObserver(data -> {
setResultCount(data.getTotalRows()); setResultCount(data.getTotalRows());
mBind.refreshLayout.finishRefresh(); mBind.refreshLayout.finishRefresh();
...@@ -97,11 +99,12 @@ public class KnowledgeActivity extends BaseActivity<SImplePresenter, ActivityKon ...@@ -97,11 +99,12 @@ public class KnowledgeActivity extends BaseActivity<SImplePresenter, ActivityKon
knowledgeAdapter = new BaseQuickAdapter<KnowledgeListBean, BaseViewHolder>(R.layout.item_knowledge_list, knowledgeList) { knowledgeAdapter = new BaseQuickAdapter<KnowledgeListBean, BaseViewHolder>(R.layout.item_knowledge_list, knowledgeList) {
@Override @Override
protected void convert(BaseViewHolder helper, KnowledgeListBean item) { protected void convert(BaseViewHolder helper, KnowledgeListBean item) {
helper.setText(R.id.tv_title, item.getTitle()); helper.setText(R.id.tv_title, FindUtils.findSearch(Color.parseColor("#FF5A4B"),item.getTitle(),keyStr));
helper.setText(R.id.tv_detail, item.getBrief()); helper.setText(R.id.tv_detail, FindUtils.findSearch(Color.parseColor("#FF5A4B"),item.getBrief(),keyStr));
helper.setOnClickListener(R.id.tv_to_detail, view -> { helper.setOnClickListener(R.id.tv_to_detail, view -> {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putInt(Constants.ID, item.getId()); bundle.putInt(Constants.ID, item.getId());
bundle.putString(Constants.TITLE, item.getTitle());
startActivity(KnowledgeDetailActivity.class, bundle); startActivity(KnowledgeDetailActivity.class, bundle);
}); });
} }
......
...@@ -25,9 +25,12 @@ public class KnowledgeDetailActivity extends BaseActivity<SImplePresenter,Activi ...@@ -25,9 +25,12 @@ public class KnowledgeDetailActivity extends BaseActivity<SImplePresenter,Activi
mBind.titleBack.setOnClickListener(view -> dumpBack()); mBind.titleBack.setOnClickListener(view -> dumpBack());
int id = getBundle().getInt(Constants.ID); int id = getBundle().getInt(Constants.ID);
String title = getBundle().getString(Constants.TITLE);
mBind.tvTitle.setText(title);
getData(id); getData(id);
CommonUtils.initWebView(mBind.webView); CommonUtils.initWebView(mBind.webView);
mBind.webView.getSettings().setTextZoom(200); mBind.webView.getSettings().setTextZoom(300);
} }
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
<TextView <TextView
android:id="@+id/tv_title" android:id="@+id/tv_title"
style="@style/text_title" style="@style/text_title"
android:text="知识详情" /> android:text="" />
<ImageView <ImageView
android:id="@+id/title_back" android:id="@+id/title_back"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment