字体替换
This commit is contained in:
parent
daa66ce621
commit
098ce9ceb2
@ -1 +1 @@
|
||||
[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":3,"versionName":"1.0.2","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release","dirName":""},"path":"app-release.apk","properties":{}}]
|
||||
[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":4,"versionName":"1.0.3","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release","dirName":""},"path":"app-release.apk","properties":{}}]
|
@ -54,8 +54,8 @@ ext {
|
||||
gCompileSdkVersion = 29
|
||||
gMinSdkVersion = 16
|
||||
gTargetSdkVersion = 29
|
||||
gVersionCode = 3
|
||||
gVersionName = '1.0.2'
|
||||
gVersionCode = 4
|
||||
gVersionName = '1.0.3'
|
||||
gBuildToolsVersion = "29.0.2"
|
||||
// gVersionCode=26
|
||||
// gVersionName='1.3.0'
|
||||
@ -115,4 +115,6 @@ ext {
|
||||
gSmartRefreshLayoutVersion = '1.1.2'
|
||||
leonidslibVersion = '1.3.2'
|
||||
ijkPlayer = '0.8.8'
|
||||
pdfVersion='2.8.2'
|
||||
downloadVersion='1.7.7'
|
||||
}
|
@ -62,7 +62,7 @@ dependencies {
|
||||
annotationProcessor "com.github.bumptech.glide:compiler:${rootProject.ext.supportGlide}"
|
||||
//butterknife
|
||||
api "com.jakewharton:butterknife:$rootProject.ext.gButterKnifeVersion"
|
||||
////选择器
|
||||
////选择器
|
||||
implementation "com.contrarywind:Android-PickerView:${rootProject.ext.pickerViewVersion}"
|
||||
implementation "com.contrarywind:wheelview:${rootProject.ext.wheelVersion}"
|
||||
//recyclerview
|
||||
@ -71,7 +71,7 @@ dependencies {
|
||||
implementation "com.nightonke:boommenu:$rootProject.ext.gBoomMenu"
|
||||
// 基础依赖包,必须要依赖
|
||||
implementation 'com.gyf.immersionbar:immersionbar:3.0.0'
|
||||
// fragment快速实现(可选)
|
||||
// fragment快速实现(可选)
|
||||
implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0'
|
||||
|
||||
}
|
||||
|
BIN
cm_utils/src/main/assets/fonts/STSONG.TTF
Normal file
BIN
cm_utils/src/main/assets/fonts/STSONG.TTF
Normal file
Binary file not shown.
@ -44,7 +44,8 @@ public class PathConfig {
|
||||
public static final String USER_TYPE_X = "25affe67-134c-4a32-ba41-64b0cfedc782";
|
||||
public static final String APP_VERSION_ID = "f5935aa1-4405-4cbe-85bc-d7c1a8ddc9c4";
|
||||
|
||||
public static final String NEWS_ID = "f497904b-7727-4832-891c-604c36ae4167";
|
||||
public static final String NEWS_ID = "f497904b-7727-4832-891c-604c36ae4167";//文化动态ID
|
||||
public static final String NEWS_SHOW_ID = "f1d5d313-f728-4dda-9843-1116d97e17b0";//展览展示ID
|
||||
public static final String NEWS_BANNER_ID = "eab0ca3c-d35d-4c02-9397-ace2bdd10fc1";
|
||||
|
||||
public static final String PLACE_TYPE_ID = "df8b758c-f6d8-465a-9aa8-c451fde47076";//场馆类型字典
|
||||
@ -81,6 +82,7 @@ public class PathConfig {
|
||||
public static final String PATH_MODULE_MAIN_FRAGMENT_MAIN = "/modulemain/fragment/main";//首页fragment
|
||||
|
||||
public static final String PATH_MODULE_MAIN_NEWS_LIST = "/modulemain/activity/newslist";
|
||||
public static final String PATH_MODULE_MAIN_NEWS_PDF = "/modulemain/activity/newspdf";//新闻PDF页面
|
||||
|
||||
public static final String PATH_MODULE_MAIN_REGISTER = "/modulemain/activity/register";//注册
|
||||
|
||||
|
@ -0,0 +1,17 @@
|
||||
package com.sucstepsoft.cm_utils.core.retrofit_net.newdownload.listener;
|
||||
|
||||
/**
|
||||
* 作者: adam
|
||||
* 日期: 2020/7/16 - 2:49 PM
|
||||
* 邮箱: itgaojian@163.com
|
||||
* 描述:
|
||||
*/
|
||||
public interface DownloadListener {
|
||||
void onStart();
|
||||
|
||||
void onProgress(int currentLength);
|
||||
|
||||
void onFinish(String localPath);
|
||||
|
||||
void onFailure();
|
||||
}
|
@ -41,11 +41,11 @@ public class BaseBannerImageAdapter extends BannerAdapter<BaseImageBean, BannerH
|
||||
RoundedCornersTransform roundedCornersTransform = new RoundedCornersTransform(holder.itemView.getContext(), ConvertUtils.dp2px(2));
|
||||
roundedCornersTransform.setNeedCorner(false, false, false, false);
|
||||
RequestOptions options = new RequestOptions()
|
||||
.override(500, 500)
|
||||
.override(500, 600)
|
||||
.error(R.drawable.ic_img_default_banner)
|
||||
.placeholder(R.drawable.ic_img_default_banner)
|
||||
.transform(roundedCornersTransform)
|
||||
.diskCacheStrategy(DiskCacheStrategy.NONE);
|
||||
.diskCacheStrategy(DiskCacheStrategy.RESOURCE);
|
||||
ImageView image = (ImageView) holder.itemView;
|
||||
Glide.with(holder.itemView.getContext())
|
||||
.asBitmap()
|
||||
|
@ -1,10 +1,14 @@
|
||||
package com.sucstepsoft.cm_utils.core.widget.views;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.TypedArray;
|
||||
import android.graphics.Typeface;
|
||||
import android.util.AttributeSet;
|
||||
import android.util.TypedValue;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.sucstepsoft.cm_utils.R;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
/**
|
||||
@ -14,24 +18,26 @@ import androidx.annotation.Nullable;
|
||||
* 描述:
|
||||
*/
|
||||
public class TypeFaceTextView extends androidx.appcompat.widget.AppCompatTextView {
|
||||
private Typeface mTypeface;
|
||||
|
||||
public TypeFaceTextView(Context context) {
|
||||
super(context);
|
||||
initTypeFace();
|
||||
this(context, null);
|
||||
}
|
||||
|
||||
public TypeFaceTextView(Context context, @Nullable AttributeSet attrs) {
|
||||
super(context, attrs);
|
||||
initTypeFace();
|
||||
this(context, attrs, 0);
|
||||
|
||||
}
|
||||
|
||||
public TypeFaceTextView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
|
||||
|
||||
super(context, attrs, defStyleAttr);
|
||||
initTypeFace();
|
||||
}
|
||||
|
||||
private void initTypeFace() {
|
||||
Typeface typeface = Typeface.createFromAsset(getContext().getAssets(), "fonts/zhangti.TTF");
|
||||
setTypeface(typeface);
|
||||
TypedArray a = context.getTheme().obtainStyledAttributes(attrs, R.styleable.TypeFaceTextView, defStyleAttr, 0);
|
||||
int type = a.getInteger(R.styleable.TypeFaceTextView_text_type_cus, 1);
|
||||
if (type == 1) {
|
||||
mTypeface = Typeface.createFromAsset(getContext().getAssets(), "fonts/zhangti.TTF");
|
||||
} else {
|
||||
mTypeface = Typeface.createFromAsset(getContext().getAssets(), "fonts/STSONG.TTF");
|
||||
}
|
||||
setTypeface(mTypeface);
|
||||
}
|
||||
}
|
||||
|
8
cm_utils/src/main/res/drawable/shape_bottom_ra.xml
Normal file
8
cm_utils/src/main/res/drawable/shape_bottom_ra.xml
Normal file
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<solid android:color="@color/trans_black" />
|
||||
<corners
|
||||
android:bottomLeftRadius="5dp"
|
||||
android:bottomRightRadius="5dp" />
|
||||
</shape>
|
@ -14,19 +14,24 @@
|
||||
<attr name="diffuse_maxWidth" format="integer" />
|
||||
<!--扩散速度,值越大越快-->
|
||||
<attr name="diffuse_speed" format="integer" />
|
||||
<attr name="iconSize" format="dimension"/>
|
||||
<attr name="iconMargin" format="dimension"/>
|
||||
<attr name="iconSrc" format="reference"/>
|
||||
<attr name="iconLeft" format="reference"/>
|
||||
<attr name="iconRight" format="reference"/>
|
||||
<attr name="duration_max" format="integer"/>
|
||||
<attr name="iconSize" format="dimension" />
|
||||
<attr name="iconMargin" format="dimension" />
|
||||
<attr name="iconSrc" format="reference" />
|
||||
<attr name="iconLeft" format="reference" />
|
||||
<attr name="iconRight" format="reference" />
|
||||
<attr name="duration_max" format="integer" />
|
||||
<attr name="text_type_cus" format="integer" />
|
||||
<declare-styleable name="JCameraView">
|
||||
<attr name="iconSize"/>
|
||||
<attr name="iconMargin"/>
|
||||
<attr name="iconSrc"/>
|
||||
<attr name="iconLeft"/>
|
||||
<attr name="iconRight"/>
|
||||
<attr name="duration_max"/>
|
||||
<attr name="iconSize" />
|
||||
<attr name="iconMargin" />
|
||||
<attr name="iconSrc" />
|
||||
<attr name="iconLeft" />
|
||||
<attr name="iconRight" />
|
||||
<attr name="duration_max" />
|
||||
</declare-styleable>
|
||||
<!--属性集合-->
|
||||
<declare-styleable name="TypeFaceTextView">
|
||||
<attr name="text_type_cus" />
|
||||
</declare-styleable>
|
||||
<declare-styleable name="DiffuseView">
|
||||
<attr name="diffuse_color" />
|
||||
|
@ -109,6 +109,8 @@ public class ActivityDetailActivity extends BaseActivity {
|
||||
private String mId;
|
||||
private ActivityDetail mMDetalBean;
|
||||
private boolean isSignUp = false;
|
||||
private String mState;
|
||||
private String mApplyId;
|
||||
|
||||
@Override
|
||||
protected int setLayoutId() {
|
||||
@ -123,6 +125,13 @@ public class ActivityDetailActivity extends BaseActivity {
|
||||
ImmersionBar.with(this).init();
|
||||
setStatusTr("详情");
|
||||
mId = getIntent().getStringExtra("id");
|
||||
mState = getIntent().getStringExtra("state");
|
||||
if (TextUtils.isEmpty(mState)) {
|
||||
isSignUp = false;
|
||||
} else {
|
||||
mApplyId = getIntent().getStringExtra("applyId");
|
||||
isSignUp = true;
|
||||
}
|
||||
mBtnSignUp.setOnClickListener(v -> {
|
||||
if (!TextUtils.isEmpty(UserLgUtils.getToken())) {
|
||||
if (isSignUp) {
|
||||
@ -168,7 +177,7 @@ public class ActivityDetailActivity extends BaseActivity {
|
||||
pDialog.show();
|
||||
RetrofitManager.getInstance()
|
||||
.create(ApiActivity.class)
|
||||
.doCancelSignUp(mId, UserLgUtils.getToken())
|
||||
.doCancelSignUp(mId, mApplyId, UserLgUtils.getToken())
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Observer<BaseSuccessBean>() {
|
||||
@ -382,7 +391,7 @@ public class ActivityDetailActivity extends BaseActivity {
|
||||
mLlBtnContent.setVisibility(View.VISIBLE);
|
||||
if ("3".equals(bean.getActivityState())) {
|
||||
mLlBtnContent.setVisibility(View.VISIBLE);
|
||||
if (TextUtils.isEmpty(bean.getIsEnroll())) {
|
||||
if (TextUtils.isEmpty(mState)) {
|
||||
mBtnSignUp.setText("报名");
|
||||
isSignUp = false;
|
||||
} else {
|
||||
|
@ -86,6 +86,8 @@ public class MineActivityListActivity extends BaseActivity {
|
||||
ARouter.getInstance()
|
||||
.build(PathConfig.PATH_MODULEACTIVITY_ACTIVITY_DETAIL)
|
||||
.withString("id", rowsBean.getActivityLibraryId())
|
||||
.withString("state", "signUp")
|
||||
.withString("applyId", rowsBean.getActivityUserApplyId())
|
||||
.navigation(mActivity, 123);
|
||||
}
|
||||
|
||||
|
@ -101,7 +101,15 @@ public class ActivityListBeans {
|
||||
private String activityVenuesDictionaryName;
|
||||
private String activityVideo;
|
||||
private String activityViewNum;
|
||||
private String activityUserApplyId;
|
||||
|
||||
public String getActivityUserApplyId() {
|
||||
return activityUserApplyId;
|
||||
}
|
||||
|
||||
public void setActivityUserApplyId(String activityUserApplyId) {
|
||||
this.activityUserApplyId = activityUserApplyId;
|
||||
}
|
||||
|
||||
public String getActivityViewNum() {
|
||||
return activityViewNum;
|
||||
|
@ -95,8 +95,8 @@ public interface ApiActivity {
|
||||
* GET /app/activityuserapply/cancelapply/{activityid}
|
||||
*/
|
||||
@Headers({"base_url_name:activity", "Content-Type:application/json", "Accept:application/json"})
|
||||
@GET("app/activityuserapply/cancelapply/{activityid}")
|
||||
Observable<BaseSuccessBean> doCancelSignUp(@Path("activityid") String id, @Header("token") String token);
|
||||
@GET("app/activityuserapply/cancelapply/{activityid}/{activityApplyUserId}")
|
||||
Observable<BaseSuccessBean> doCancelSignUp(@Path("activityid") String id, @Path("activityApplyUserId") String aId, @Header("token") String token);
|
||||
|
||||
/**
|
||||
* 获取验证码
|
||||
|
@ -231,6 +231,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="5dp"
|
||||
android:layout_weight="1"
|
||||
android:inputType="number"
|
||||
android:background="@null"
|
||||
android:hint="请输入验证码"
|
||||
android:textSize="13sp" />
|
||||
|
@ -17,6 +17,7 @@ import com.sucstepsoft.cm_utils.core.retrofit_net.RetrofitManager;
|
||||
import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
|
||||
import com.sucstepsoft.cm_utils.core.widget.views.TypeFaceTextView;
|
||||
import com.sucstepsoft.cm_utils.utils.ExceptionHandler;
|
||||
import com.sucstepsoft.cm_utils.utils.LogUtils;
|
||||
import com.tengshisoft.modulecultural.R;
|
||||
import com.tengshisoft.modulecultural.R2;
|
||||
import com.tengshisoft.modulecultural.adapter.LegacyMainAdapter;
|
||||
@ -74,7 +75,7 @@ public class CulturalLegacyActivity extends BaseActivity {
|
||||
mTvBaseTitle.setText("非物质文化遗产库");
|
||||
refreshView(STATE_LOAD_LOADING);
|
||||
mAdapter = new LegacyMainAdapter(mActivity, mDatas);
|
||||
mRlvLegacy.setLayoutManager(new LinearLayoutManager(mActivity, LinearLayoutManager.HORIZONTAL, false));
|
||||
mRlvLegacy.setLayoutManager(new LinearLayoutManager(mActivity, LinearLayoutManager.VERTICAL, false));
|
||||
mSrlLegacy.setOnRefreshListener(refreshLayout -> refreshData());
|
||||
mSrlLegacy.setOnLoadMoreListener(refreshLayout -> loadMoreData());
|
||||
mRlvLegacy.setAdapter(mAdapter);
|
||||
@ -127,10 +128,11 @@ public class CulturalLegacyActivity extends BaseActivity {
|
||||
|
||||
@Override
|
||||
public void onNext(LegacyListBean legacyListBean) {
|
||||
LogUtils.e(legacyListBean.getRows().size());
|
||||
if (page == 1) {
|
||||
if (legacyListBean != null && legacyListBean.getRows().size() > 0) {
|
||||
mTotalPage = legacyListBean.getTotal();
|
||||
mDatas = legacyListBean.getRows();
|
||||
mDatas = new ArrayList<>(legacyListBean.getRows());
|
||||
mAdapter.setData(mDatas);
|
||||
setState(STATE_SUCCESS);
|
||||
} else {
|
||||
|
@ -65,7 +65,7 @@ public class CulturalLiveActivity extends BaseActivity {
|
||||
public void initData() {
|
||||
super.initData();
|
||||
mBind = ButterKnife.bind(this);
|
||||
mTvBaseTitle.setText("直播");
|
||||
mTvBaseTitle.setText("直播点播");
|
||||
refreshView(STATE_LOAD_LOADING);
|
||||
mRlvLives.setLayoutManager(new LinearLayoutManager(mActivity, LinearLayoutManager.VERTICAL, false));
|
||||
mAdapter = new ShareLiveAdapter(mActivity, mDatas);
|
||||
|
@ -2,6 +2,7 @@ package com.tengshisoft.modulecultural.activitys;
|
||||
|
||||
import android.graphics.Color;
|
||||
import android.net.http.SslError;
|
||||
import android.text.TextUtils;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.View;
|
||||
import android.webkit.SslErrorHandler;
|
||||
@ -18,20 +19,25 @@ import com.bumptech.glide.request.RequestOptions;
|
||||
import com.gyf.immersionbar.ImmersionBar;
|
||||
import com.sothree.slidinguppanel.SlidingUpPanelLayout;
|
||||
import com.sucstepsoft.cm_utils.constant.PathConfig;
|
||||
import com.sucstepsoft.cm_utils.core.beans.BaseImageBean;
|
||||
import com.sucstepsoft.cm_utils.core.retrofit_net.BaseUrlApi;
|
||||
import com.sucstepsoft.cm_utils.core.retrofit_net.RetrofitManager;
|
||||
import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
|
||||
import com.sucstepsoft.cm_utils.core.widget.base.BaseBannerImageAdapter;
|
||||
import com.sucstepsoft.cm_utils.core.widget.base.RoundedCornersTransform;
|
||||
import com.sucstepsoft.cm_utils.core.widget.views.ItemSplitDivider;
|
||||
import com.sucstepsoft.cm_utils.utils.ConvertUtils;
|
||||
import com.sucstepsoft.cm_utils.utils.ExceptionHandler;
|
||||
import com.sucstepsoft.cm_utils.utils.LogUtils;
|
||||
import com.tengshisoft.modulecultural.R;
|
||||
import com.tengshisoft.modulecultural.R2;
|
||||
import com.tengshisoft.modulecultural.adapter.LegacyPersonAdapter;
|
||||
import com.tengshisoft.modulecultural.bean.LegacyDetailBean;
|
||||
import com.tengshisoft.modulecultural.bean.LegacyPersonBean;
|
||||
import com.tengshisoft.modulecultural.net.CulturalApi;
|
||||
import com.youth.banner.Banner;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import androidx.core.widget.NestedScrollView;
|
||||
@ -74,8 +80,8 @@ public class LegacyDetailActivity extends BaseActivity {
|
||||
LinearLayout mLlContent;
|
||||
@BindView(R2.id.tv_person_hint)
|
||||
TextView mTvPersonHint;
|
||||
@BindView(R2.id.iv_cover)
|
||||
ImageView mIvCover;
|
||||
@BindView(R2.id.banner_cover)
|
||||
Banner mIvCover;
|
||||
@BindView(R2.id.tv_title)
|
||||
TextView mTvTitle;
|
||||
private Unbinder mBind;
|
||||
@ -194,11 +200,26 @@ public class LegacyDetailActivity extends BaseActivity {
|
||||
* @param bean
|
||||
*/
|
||||
private void setDataToView(LegacyDetailBean bean) {
|
||||
Glide.with(mActivity)
|
||||
.asBitmap()
|
||||
.load(BaseUrlApi.BASE_LEGACY_IMG_URL + bean.getLibraryCover())
|
||||
.apply(mOptions)
|
||||
.into(mIvCover);
|
||||
if (!TextUtils.isEmpty(bean.getLibraryCover())) {
|
||||
String[] split = bean.getLibraryCover().split(",");
|
||||
List<BaseImageBean> beans = new ArrayList<>();
|
||||
for (int i = 0; i < split.length; i++) {
|
||||
BaseImageBean bean1 = new BaseImageBean();
|
||||
bean1.setImgUrl(BaseUrlApi.BASE_LEGACY_IMG_URL + split[i]);
|
||||
beans.add(bean1);
|
||||
}
|
||||
BaseBannerImageAdapter adapter = new BaseBannerImageAdapter(beans);
|
||||
mIvCover.setAdapter(adapter);
|
||||
adapter.notifyDataSetChanged();
|
||||
mIvCover.setDelayTime(3000);
|
||||
mIvCover.start();
|
||||
// Glide.with(mActivity)
|
||||
// .asBitmap()
|
||||
// .load(BaseUrlApi.BASE_LEGACY_IMG_URL + bean.getLibraryCover())
|
||||
// .apply(mOptions)
|
||||
// .into(mIvCover);
|
||||
}
|
||||
|
||||
mTvTitle.setText(bean.getLibraryTitle());
|
||||
mTvSNum.setText(bean.getLibraryNumber());
|
||||
mTvIdNum.setText(bean.getLibrarySource());
|
||||
|
@ -37,7 +37,7 @@ public class LegacyMainAdapter extends BaseRecyclerAdapter<LegacyListBean.RowsBe
|
||||
.error(R.drawable.ic_img_default)
|
||||
.placeholder(R.drawable.ic_img_default)
|
||||
.transform(roundedCornersTransform)
|
||||
.diskCacheStrategy(DiskCacheStrategy.NONE);
|
||||
.diskCacheStrategy(DiskCacheStrategy.RESOURCE);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -48,9 +48,10 @@ public class LegacyMainAdapter extends BaseRecyclerAdapter<LegacyListBean.RowsBe
|
||||
|
||||
@Override
|
||||
public void bindHolder(LegacyMainHolder legacyMainHolder, int i) {
|
||||
String[] split = mData.get(i).getLibraryCover().split(",");
|
||||
Glide.with(mContext)
|
||||
.asBitmap()
|
||||
.load(BaseUrlApi.BASE_LEGACY_IMG_URL + mData.get(i).getLibraryCover())
|
||||
.load(BaseUrlApi.BASE_LEGACY_IMG_URL + split[0])
|
||||
.apply(mOptions)
|
||||
.into(legacyMainHolder.mIvCover);
|
||||
legacyMainHolder.mTvName.setText(mData.get(i).getLibraryTitle());
|
||||
|
@ -84,7 +84,7 @@ public interface CulturalApi {
|
||||
*/
|
||||
@Headers({"base_url_name:legacy", "Content-Type:application/json", "Accept:application/json"})
|
||||
@GET("app/intangiblelibraryperson/listintangiblelibrarypersonrelease")
|
||||
Observable<List<LegacyPersonBean>> getLegacyPersonById(@Query("id") String id);
|
||||
Observable<List<LegacyPersonBean>> getLegacyPersonById(@Query("intangibleLibraryId") String id);
|
||||
|
||||
@Headers({"base_url_name:legacy", "Content-Type:application/json", "Accept:application/json"})
|
||||
@GET("app/intangiblelibraryperson/listintangiblelibrarypersonrelease")
|
||||
|
@ -7,7 +7,7 @@
|
||||
android:orientation="vertical"
|
||||
android:theme="@style/Theme.AppCompat">
|
||||
|
||||
<!-- app:tabGravity="fill"-->
|
||||
<!-- app:tabGravity="fill"-->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
|
@ -10,12 +10,15 @@
|
||||
app:umanoPanelHeight="150dp"
|
||||
app:umanoShadowHeight="4dp">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_cover"
|
||||
<!-- <ImageView-->
|
||||
<!-- android:id="@+id/iv_cover"-->
|
||||
<!-- android:layout_width="match_parent"-->
|
||||
<!-- android:layout_height="match_parent"-->
|
||||
<!-- android:scaleType="fitXY" />-->
|
||||
<com.youth.banner.Banner
|
||||
android:id="@+id/banner_cover"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="fitXY" />
|
||||
|
||||
android:layout_height="match_parent"/>
|
||||
<!-- <androidx.core.widget.NestedScrollView-->
|
||||
<!-- android:layout_width="match_parent"-->
|
||||
<!-- android:layout_height="wrap_content">-->
|
||||
|
@ -85,6 +85,10 @@ dependencies {
|
||||
implementation "com.plattysoft.leonids:LeonidsLib:${rootProject.ext.leonidslibVersion}"
|
||||
//banner
|
||||
implementation "com.youth.banner:banner:${rootProject.ext.bannerVersion}"
|
||||
//文件下载 1.7.7
|
||||
implementation "com.liulishuo.filedownloader:library:${rootProject.ext.downloadVersion}"
|
||||
// PDF阅读器1 2.8.2
|
||||
implementation "com.github.barteksc:android-pdf-viewer:${rootProject.ext.pdfVersion}"
|
||||
// debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.3'
|
||||
//骨架
|
||||
implementation 'com.ethanhua:skeleton:1.1.2'
|
||||
|
@ -23,14 +23,13 @@
|
||||
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
|
||||
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
|
||||
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
|
||||
<uses-permission android:name="android.permission.GET_TASKS" />
|
||||
<!-- Required -->
|
||||
<uses-permission android:name="android.permission.GET_TASKS" /> <!-- Required -->
|
||||
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
|
||||
|
||||
<!-- Optional. Required for location feature -->
|
||||
<application
|
||||
android:maxAspectRatio="2.4"
|
||||
android:resizeableActivity="true">
|
||||
<activity android:name=".cultural.activitys.news.NewsPdfActivity"></activity>
|
||||
<activity
|
||||
android:name=".cultural.activitys.base.ForgatPwdActivity"
|
||||
android:launchMode="singleTop"
|
||||
@ -109,13 +108,6 @@
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
|
||||
<!-- <meta-data-->
|
||||
<!-- android:name="JPUSH_CHANNEL"-->
|
||||
<!-- android:value="developer-default" /> <!– Required. AppKey copied from Portal –>-->
|
||||
<!-- <meta-data-->
|
||||
<!-- android:name="JPUSH_APPKEY"-->
|
||||
<!-- android:value="9575fdffe323b4febdd385dd" />-->
|
||||
</application>
|
||||
|
||||
</manifest>
|
@ -207,12 +207,13 @@ public class NewsDetailActivity extends BaseActivity {
|
||||
}
|
||||
mIvShare.setOnClickListener(v -> showShareDialog());
|
||||
WebSettings settings = mWvContent.getSettings();
|
||||
// settings.setCacheMode(WebSettings.LOAD_NO_CACHE);
|
||||
settings.setCacheMode(WebSettings.LOAD_DEFAULT);
|
||||
settings.setAppCacheEnabled(true);
|
||||
// settings.setJavaScriptCanOpenWindowsAutomatically(true);
|
||||
// settings.setBuiltInZoomControls(false);//显示放大缩小按钮(不支持已经适配好移动端的页面)
|
||||
settings.setJavaScriptEnabled(true);//启用JS
|
||||
// settings.setUseWideViewPort(true); //双击缩放
|
||||
// settings.setBlockNetworkImage(true);
|
||||
settings.setBlockNetworkImage(true);//阻塞页面图片加载
|
||||
settings.setDomStorageEnabled(true);
|
||||
// settings.setLoadsImagesAutomatically(true);
|
||||
// settings.setAllowFileAccess(true);
|
||||
@ -236,6 +237,7 @@ public class NewsDetailActivity extends BaseActivity {
|
||||
public void onPageFinished(WebView view, String url) {
|
||||
super.onPageFinished(view, url);
|
||||
mContentSkeleton.hide();
|
||||
view.getSettings().setBlockNetworkImage(false);//开启页面图片加载
|
||||
runOnUiThread(() -> mWvContent.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT)));
|
||||
}
|
||||
|
||||
@ -258,13 +260,6 @@ public class NewsDetailActivity extends BaseActivity {
|
||||
return super.onJsAlert(view, url, message, result);
|
||||
}
|
||||
});
|
||||
// mWvContent.setOnTouchListener((v, event) -> {
|
||||
// if (event.getAction() == MotionEvent.ACTION_UP)
|
||||
// mNslContent.requestDisallowInterceptTouchEvent(false);
|
||||
// else
|
||||
// mNslContent.requestDisallowInterceptTouchEvent(true);
|
||||
// return false;
|
||||
// });
|
||||
mCommentDatas = new ArrayList<>();
|
||||
mAdapter = new CommentAdapter(mActivity, mCommentDatas, true);
|
||||
mAdapter.addShowPhotoListener(path -> {
|
||||
|
@ -46,13 +46,17 @@ public class NewsMainActivity extends BaseActivity {
|
||||
private List<NewsTabBean> mTabs = new ArrayList<>();
|
||||
private List<Fragment> mFragments = new ArrayList<>();
|
||||
private Disposable mDisposable;
|
||||
private String mId;
|
||||
private String mTitle;
|
||||
|
||||
|
||||
@Override
|
||||
public void initData() {
|
||||
mBind = ButterKnife.bind(this);
|
||||
mTvBaseTitle.setText("文化动态");
|
||||
mTitle = getIntent().getStringExtra("title");
|
||||
mId = getIntent().getStringExtra("id");
|
||||
refreshView(STATE_LOAD_LOADING);
|
||||
mTvBaseTitle.setText(mTitle);
|
||||
getNewsTabs();
|
||||
}
|
||||
|
||||
@ -62,7 +66,7 @@ public class NewsMainActivity extends BaseActivity {
|
||||
private void getNewsTabs() {
|
||||
RetrofitManager.getInstance()
|
||||
.create(HomeApi.class)
|
||||
.getNewsTabListByPid(PathConfig.NEWS_ID)
|
||||
.getNewsTabListByPid(mId)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Observer<List<NewsTabBean>>() {
|
||||
|
@ -0,0 +1,121 @@
|
||||
package com.tengshisoft.mudulemain.cultural.activitys.news;
|
||||
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
import androidx.core.content.FileProvider;
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import butterknife.Unbinder;
|
||||
import retrofit2.http.Path;
|
||||
|
||||
import android.graphics.Canvas;
|
||||
import android.net.Uri;
|
||||
import android.net.http.SslError;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.os.Environment;
|
||||
import android.webkit.HttpAuthHandler;
|
||||
import android.webkit.JsResult;
|
||||
import android.webkit.SslErrorHandler;
|
||||
import android.webkit.WebChromeClient;
|
||||
import android.webkit.WebResourceError;
|
||||
import android.webkit.WebResourceRequest;
|
||||
import android.webkit.WebSettings;
|
||||
import android.webkit.WebView;
|
||||
import android.webkit.WebViewClient;
|
||||
import android.widget.LinearLayout;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.github.barteksc.pdfviewer.PDFView;
|
||||
import com.github.barteksc.pdfviewer.listener.OnDrawListener;
|
||||
import com.github.barteksc.pdfviewer.listener.OnPageErrorListener;
|
||||
import com.liulishuo.filedownloader.BaseDownloadTask;
|
||||
import com.liulishuo.filedownloader.FileDownloadListener;
|
||||
import com.liulishuo.filedownloader.FileDownloader;
|
||||
import com.sucstepsoft.cm_utils.constant.PathConfig;
|
||||
import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity;
|
||||
import com.sucstepsoft.cm_utils.utils.LogUtils;
|
||||
import com.sucstepsoft.cm_utils.utils.ProiderUtil;
|
||||
import com.tengshisoft.mudulemain.R;
|
||||
import com.tengshisoft.mudulemain.R2;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
@Route(path = PathConfig.PATH_MODULE_MAIN_NEWS_PDF)
|
||||
public class NewsPdfActivity extends BaseActivity {
|
||||
@BindView(R2.id.pdf_content)
|
||||
PDFView mPDFView;
|
||||
private Unbinder mBind;
|
||||
|
||||
@Override
|
||||
protected int setLayoutId() {
|
||||
return R.layout.activity_news_pdf;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initData() {
|
||||
super.initData();
|
||||
//
|
||||
mBind = ButterKnife.bind(this);
|
||||
mTvBaseTitle.setText("数图资源");
|
||||
refreshView(STATE_LOAD_LOADING);
|
||||
String absolutePath = getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS).getAbsolutePath();
|
||||
FileDownloader.setup(mActivity);
|
||||
FileDownloader.getImpl()
|
||||
.create("https://haidian2.hanyastar.com.cn/book/20170308153955_1488958795786_390.pdf")
|
||||
.setPath(absolutePath, true)
|
||||
.setListener(new FileDownloadListener() {
|
||||
@Override
|
||||
protected void pending(BaseDownloadTask task, int soFarBytes, int totalBytes) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void progress(BaseDownloadTask task, int soFarBytes, int totalBytes) {
|
||||
LogUtils.e(soFarBytes + "==");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void completed(BaseDownloadTask task) {
|
||||
refreshView(STATE_LOAD_SUCCESS);
|
||||
mPDFView.fromFile(new File(task.getPath() + File.separator + task.getFilename()))
|
||||
.enableSwipe(true) // allows to block changing pages using swipe
|
||||
.swipeHorizontal(false)
|
||||
.enableDoubletap(true)
|
||||
.defaultPage(0)
|
||||
.enableAnnotationRendering(false) // render annotations (such as comments, colors or forms)
|
||||
.password(null)
|
||||
.scrollHandle(null)
|
||||
.onPageError((page, t) -> refreshView(STATE_LOAD_ERROR))
|
||||
.enableAntialiasing(true) // improve rendering a little bit on low-res screens
|
||||
.spacing(0)
|
||||
.load();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void paused(BaseDownloadTask task, int soFarBytes, int totalBytes) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void error(BaseDownloadTask task, Throwable e) {
|
||||
e.printStackTrace();
|
||||
refreshView(STATE_LOAD_ERROR);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void warn(BaseDownloadTask task) {
|
||||
|
||||
}
|
||||
})
|
||||
.start();
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onDestroy() {
|
||||
if (mBind != null) {
|
||||
mBind.unbind();
|
||||
}
|
||||
super.onDestroy();
|
||||
}
|
||||
}
|
@ -36,7 +36,7 @@ public class MainFuncAdapter extends BaseRecyclerAdapter<MainFuncBean, MainFuncH
|
||||
public MainFuncHolder createHolder(ViewGroup parent, int viewType) {
|
||||
View itemView = LayoutInflater.from(mContext).inflate(R.layout.item_main_func, parent, false);
|
||||
RecyclerView.LayoutParams layoutParams = (RecyclerView.LayoutParams) itemView.getLayoutParams();
|
||||
if (mData.size() <= 5) {//处理居中
|
||||
if (mData.size() <= 9) {//处理居中
|
||||
int width = (ScreenUtils.getScreenWidth()) / 4;
|
||||
layoutParams.width = width;
|
||||
}
|
||||
|
@ -47,7 +47,7 @@ public class NewsAdapter extends BaseRecyclerAdapter<NewsItemBean.RowsBean, Recy
|
||||
public NewsAdapter(Context ctx, List<NewsItemBean.RowsBean> list) {
|
||||
super(ctx, list);
|
||||
mPicOptions = new RequestOptions()
|
||||
.transform(new GlideRoundTransform(mContext, 5))
|
||||
.transform(new GlideRoundTransform(mContext, 2))
|
||||
.error(R.drawable.ic_img_default)
|
||||
.placeholder(R.drawable.ic_img_default);
|
||||
}
|
||||
|
@ -1,58 +1,34 @@
|
||||
package com.tengshisoft.mudulemain.cultural.fragment;
|
||||
|
||||
import android.app.ProgressDialog;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Color;
|
||||
import android.net.MacAddress;
|
||||
import android.os.Bundle;
|
||||
import android.os.Environment;
|
||||
import android.text.TextUtils;
|
||||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.ScrollView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.alibaba.android.arouter.launcher.ARouter;
|
||||
import com.baidu.mapapi.map.TextureMapView;
|
||||
import com.ethanhua.skeleton.RecyclerViewSkeletonScreen;
|
||||
import com.ethanhua.skeleton.Skeleton;
|
||||
import com.ethanhua.skeleton.ViewSkeletonScreen;
|
||||
import com.google.android.material.appbar.AppBarLayout;
|
||||
import com.google.android.material.tabs.TabLayoutMediator;
|
||||
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
|
||||
import com.sucstepsoft.cm_utils.constant.MemoryConstants;
|
||||
import com.sucstepsoft.cm_utils.constant.PathConfig;
|
||||
import com.sucstepsoft.cm_utils.core.beans.BaseImageBean;
|
||||
import com.sucstepsoft.cm_utils.core.retrofit_net.BaseUrlApi;
|
||||
import com.sucstepsoft.cm_utils.core.retrofit_net.RetrofitManager;
|
||||
import com.sucstepsoft.cm_utils.core.widget.base.BannerImageTextAdapter;
|
||||
import com.sucstepsoft.cm_utils.core.widget.base.BaseBannerImageAdapter;
|
||||
import com.sucstepsoft.cm_utils.core.widget.base.BaseFragment;
|
||||
import com.sucstepsoft.cm_utils.core.widget.base.BaseRecyclerAdapter;
|
||||
import com.sucstepsoft.cm_utils.core.widget.base.CustomDialog;
|
||||
import com.sucstepsoft.cm_utils.core.widget.views.BottomDialogShareView;
|
||||
import com.sucstepsoft.cm_utils.core.widget.views.ItemSplitDivider;
|
||||
import com.sucstepsoft.cm_utils.core.widget.views.TypeFaceTextView;
|
||||
import com.sucstepsoft.cm_utils.utils.ConvertUtils;
|
||||
import com.sucstepsoft.cm_utils.utils.ExceptionHandler;
|
||||
import com.sucstepsoft.cm_utils.utils.LogUtils;
|
||||
import com.sucstepsoft.cm_utils.utils.ScreenUtils;
|
||||
import com.sucstepsoft.cm_utils.utils.ToastUtils;
|
||||
import com.sucstepsoft.cm_utils.utils.UIUtil;
|
||||
import com.sucstepsoft.cm_utils.utils.UserLgUtils;
|
||||
import com.tengshisoft.moduleactivity.beans.ActivityListBeans;
|
||||
import com.tengshisoft.modulecultural.bean.CulturalLiveBean;
|
||||
import com.tengshisoft.modulecultural.bean.LegacyListBean;
|
||||
import com.tengshisoft.modulecultural.net.CulturalApi;
|
||||
import com.tengshisoft.moduleplace.beans.PlaceListBean;
|
||||
import com.tengshisoft.mudulemain.R;
|
||||
import com.tengshisoft.mudulemain.R2;
|
||||
import com.tengshisoft.mudulemain.cultural.activitys.base.DemoActivity;
|
||||
import com.tengshisoft.mudulemain.cultural.activitys.base.MainActivity;
|
||||
import com.tengshisoft.mudulemain.cultural.activitys.news.NewsMainActivity;
|
||||
import com.tengshisoft.mudulemain.cultural.adapter.LiveAdapter;
|
||||
import com.tengshisoft.mudulemain.cultural.adapter.MainCommendAdapter;
|
||||
import com.tengshisoft.mudulemain.cultural.adapter.MainFuncAdapter;
|
||||
@ -64,20 +40,12 @@ import com.tengshisoft.mudulemain.cultural.beans.NewsItemBean;
|
||||
import com.tengshisoft.mudulemain.cultural.beans.NewsTabBean;
|
||||
import com.tengshisoft.mudulemain.cultural.net.HomeApi;
|
||||
import com.youth.banner.Banner;
|
||||
import com.youth.banner.config.IndicatorConfig;
|
||||
import com.youth.banner.indicator.CircleIndicator;
|
||||
import com.youth.banner.listener.OnBannerListener;
|
||||
import com.youth.banner.transformer.AlphaPageTransformer;
|
||||
import com.youth.banner.transformer.DepthPageTransformer;
|
||||
import com.youth.banner.transformer.ScaleInTransformer;
|
||||
import com.youth.banner.util.BannerUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
|
||||
import javax.security.auth.login.LoginException;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.recyclerview.widget.GridLayoutManager;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
@ -85,12 +53,10 @@ import androidx.recyclerview.widget.RecyclerView;
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import butterknife.Unbinder;
|
||||
import cn.jiguang.share.android.api.JShareInterface;
|
||||
import io.reactivex.Observable;
|
||||
import io.reactivex.Observer;
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||
import io.reactivex.disposables.Disposable;
|
||||
import io.reactivex.exceptions.CompositeException;
|
||||
import io.reactivex.schedulers.Schedulers;
|
||||
|
||||
/**
|
||||
@ -148,7 +114,7 @@ public class HomeFragment extends BaseFragment {
|
||||
setStateView(STATE_SUCCESS);
|
||||
mSrlView.setEnableLoadMore(false);
|
||||
mSrlView.setEnableRefresh(false);
|
||||
mLlMainNews.setOnClickListener(v -> ARouter.getInstance().build(PathConfig.PATH_MODULE_MAIN_NEWS_MAIN).navigation());
|
||||
// mLlMainNews.setOnClickListener(v -> ARouter.getInstance().build(PathConfig.PATH_MODULE_MAIN_NEWS_MAIN).navigation());
|
||||
mRlvMainNews.setLayoutManager(new LinearLayoutManager(mActivity, LinearLayoutManager.VERTICAL, false));
|
||||
mRlvMainNews.addItemDecoration(new ItemSplitDivider(mActivity, LinearLayoutManager.VERTICAL, 1, Color.parseColor("#F2F2F2")));
|
||||
mRlvMainNews.setAdapter(mMAdapter);
|
||||
@ -244,7 +210,9 @@ public class HomeFragment extends BaseFragment {
|
||||
.navigation();
|
||||
}
|
||||
});
|
||||
mLlLive.setOnClickListener(v -> ARouter.getInstance().build(PathConfig.PATH_MODULE_CULTURAL_LIVE).navigation());
|
||||
// ARouter.getInstance().build(PathConfig.PATH_MODULE_MAIN_NEWS_MAIN).navigation()
|
||||
// ARouter.getInstance().build(PathConfig.PATH_MODULE_CULTURAL_LIVE).navigation()
|
||||
// mLlLive.setOnClickListener(v -> ARouter.getInstance().build(PathConfig.PATH_MODULE_CULTURAL_LIVE).navigation());
|
||||
}
|
||||
|
||||
|
||||
@ -662,11 +630,21 @@ public class HomeFragment extends BaseFragment {
|
||||
MainFuncBean volunBean = new MainFuncBean();
|
||||
volunBean.setIconRes(R.drawable.ic_volunteer_icon);
|
||||
volunBean.setTitle("志愿者服务");
|
||||
MainFuncBean showBean = new MainFuncBean();
|
||||
showBean.setIconRes(R.drawable.ic_show_icon);
|
||||
showBean.setTitle("展览展示");
|
||||
MainFuncBean culBean = new MainFuncBean();
|
||||
culBean.setIconRes(R.drawable.ic_cultural_trends_icon);
|
||||
culBean.setTitle("文化动态");
|
||||
|
||||
mFuncBeans.add(showBean);
|
||||
mFuncBeans.add(culBean);
|
||||
mFuncBeans.add(volunBean);
|
||||
mFuncBeans.add(activityBean);
|
||||
mFuncBeans.add(placeBean);
|
||||
mFuncBeans.add(culturalBean);
|
||||
mFuncBeans.add(movieBean);
|
||||
|
||||
MainFuncAdapter funcAdapter = new MainFuncAdapter(getActivity(), mFuncBeans);
|
||||
LinearLayoutManager manager = new LinearLayoutManager(mActivity, LinearLayoutManager.HORIZONTAL, false);
|
||||
mRlvMainFunc.setLayoutManager(manager);
|
||||
@ -701,11 +679,6 @@ public class HomeFragment extends BaseFragment {
|
||||
mBanner.start();
|
||||
}
|
||||
|
||||
private void showShareDialog() {
|
||||
ProgressDialog dialog = UIUtil.initDialog(mActivity, "数据加载中...");
|
||||
dialog.show();
|
||||
}
|
||||
|
||||
/**
|
||||
* 首页点击按钮
|
||||
*
|
||||
@ -722,6 +695,16 @@ public class HomeFragment extends BaseFragment {
|
||||
ARouter.getInstance().build(PathConfig.PATH_MODULE_CULTURAL_LIVE).navigation();
|
||||
} else if ("志愿者服务".equals(mainFuncBean.getTitle())) {
|
||||
ARouter.getInstance().build(PathConfig.PATH_MODULE_CULTURAL_VOUNTEER_MAIN).navigation();
|
||||
} else if ("文化动态".equals(mainFuncBean.getTitle())) {
|
||||
ARouter.getInstance().build(PathConfig.PATH_MODULE_MAIN_NEWS_MAIN)
|
||||
.withString("title", "文化动态")
|
||||
.withString("id", PathConfig.NEWS_ID)
|
||||
.navigation();
|
||||
} else if ("展览展示".equals(mainFuncBean.getTitle())) {
|
||||
ARouter.getInstance().build(PathConfig.PATH_MODULE_MAIN_NEWS_MAIN)
|
||||
.withString("title", "展览展示")
|
||||
.withString("id", PathConfig.NEWS_SHOW_ID)
|
||||
.navigation();
|
||||
}
|
||||
}
|
||||
|
||||
@ -734,90 +717,6 @@ public class HomeFragment extends BaseFragment {
|
||||
protected void loadMoreData() {
|
||||
}
|
||||
|
||||
/**
|
||||
* // * 首页获取场馆--精彩推荐
|
||||
* //
|
||||
*/
|
||||
// private void getPlaceList() {
|
||||
// RetrofitManager.getInstance()
|
||||
// .create(HomeApi.class)
|
||||
// .getPlaceByOrder(UserLgUtils.getLocationLat(), UserLgUtils.getLocationLng(), "hot", "1", "3")
|
||||
// .subscribeOn(Schedulers.io())
|
||||
// .observeOn(AndroidSchedulers.mainThread())
|
||||
// .subscribe(new Observer<PlaceListBean>() {
|
||||
// @Override
|
||||
// public void onSubscribe(Disposable d) {
|
||||
//
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public void onNext(PlaceListBean placeListBean) {
|
||||
// for (int i = 0; i < placeListBean.getRows().size(); i++) {
|
||||
// PlaceListBean.RowsBean rowsBean = placeListBean.getRows().get(i);
|
||||
// MainCommendBean bean = new MainCommendBean();
|
||||
// bean.setType(1);
|
||||
// bean.setId(rowsBean.getVenuesInfoId());
|
||||
// bean.setImgUrl(rowsBean.getVenuePanorama());
|
||||
// mMainCommendBeans.add(bean);
|
||||
// }
|
||||
// mCommendAdapter.setData(mMainCommendBeans);
|
||||
//
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public void onError(Throwable e) {
|
||||
//
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public void onComplete() {
|
||||
//
|
||||
// }
|
||||
// });
|
||||
//
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 首页获取最新的活动
|
||||
// */
|
||||
// private void getActivityList() {
|
||||
// RetrofitManager.getInstance()
|
||||
// .create(HomeApi.class)
|
||||
// .getMainActivityList("1", "3")
|
||||
// .subscribeOn(Schedulers.io())
|
||||
// .observeOn(AndroidSchedulers.mainThread())
|
||||
// .subscribe(new Observer<ActivityListBeans>() {
|
||||
// @Override
|
||||
// public void onSubscribe(Disposable d) {
|
||||
//
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public void onNext(ActivityListBeans activityListBeans) {
|
||||
// if (activityListBeans != null && activityListBeans.getRows() != null && activityListBeans.getRows().size() > 0) {
|
||||
// for (int i = 0; i < activityListBeans.getRows().size(); i++) {
|
||||
// ActivityListBeans.RowsBean rowsBean = activityListBeans.getRows().get(i);
|
||||
// MainCommendBean bean = new MainCommendBean();
|
||||
// bean.setType(1);
|
||||
// bean.setId(rowsBean.getActivityLibraryId());
|
||||
// bean.setImgUrl(rowsBean.getActivityImage());
|
||||
// mMainCommendBeans.add(bean);
|
||||
// }
|
||||
// mCommendAdapter.setData(mMainCommendBeans);
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public void onError(Throwable e) {
|
||||
//
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public void onComplete() {
|
||||
//
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
@Override
|
||||
protected int getContentViewId() {
|
||||
return R.layout.fragment_home;
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 2.8 KiB |
BIN
modulemain/src/main/res/drawable-xhdpi/ic_show_icon.png
Normal file
BIN
modulemain/src/main/res/drawable-xhdpi/ic_show_icon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.2 KiB |
13
modulemain/src/main/res/layout/activity_news_pdf.xml
Normal file
13
modulemain/src/main/res/layout/activity_news_pdf.xml
Normal file
@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
tools:context=".cultural.activitys.news.NewsPdfActivity">
|
||||
|
||||
<com.github.barteksc.pdfviewer.PDFView
|
||||
android:id="@+id/pdf_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent" />
|
||||
</LinearLayout>
|
@ -35,7 +35,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentBottom="true"
|
||||
android:background="@color/trans_black"
|
||||
android:background="@drawable/shape_bottom_ra"
|
||||
android:ellipsize="end"
|
||||
android:maxLines="1"
|
||||
android:singleLine="true"
|
||||
|
@ -14,6 +14,7 @@
|
||||
android:ellipsize="end"
|
||||
android:maxLines="2"
|
||||
android:padding="5dp"
|
||||
android:lines="2"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="@dimen/news_title_text_size"
|
||||
tools:text="新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题新闻标题" />
|
||||
@ -30,7 +31,7 @@
|
||||
android:layout_height="80dp"
|
||||
android:layout_margin="2dp"
|
||||
android:layout_weight="1"
|
||||
tools:background="@drawable/temp_img" />
|
||||
tools:background="@drawable/ic_img_default" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_multi_pic_two"
|
||||
@ -38,7 +39,7 @@
|
||||
android:layout_height="80dp"
|
||||
android:layout_margin="2dp"
|
||||
android:layout_weight="1"
|
||||
tools:background="@drawable/temp_img" />
|
||||
tools:background="@drawable/ic_img_default" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_multi_pic_three"
|
||||
@ -46,7 +47,7 @@
|
||||
android:layout_height="80dp"
|
||||
android:layout_margin="2dp"
|
||||
android:layout_weight="1"
|
||||
tools:background="@drawable/temp_img" />
|
||||
tools:background="@drawable/ic_img_default" />
|
||||
</LinearLayout>
|
||||
|
||||
<RelativeLayout
|
||||
|
@ -12,6 +12,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:ellipsize="end"
|
||||
android:lines="2"
|
||||
android:maxLines="2"
|
||||
android:padding="5dp"
|
||||
android:textColor="@color/black"
|
||||
|
@ -13,6 +13,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:ellipsize="end"
|
||||
android:lines="2"
|
||||
android:maxLines="2"
|
||||
android:padding="5dp"
|
||||
android:textColor="@color/black"
|
||||
@ -28,14 +29,16 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="2dp"
|
||||
tools:background="@drawable/temp_img" />
|
||||
android:scaleType="fitXY"
|
||||
tools:background="@drawable/ic_img_default" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_movie_play_icon"
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="30dp"
|
||||
android:layout_centerInParent="true"
|
||||
android:background="@drawable/ic_play_item" />
|
||||
android:scaleType="fitXY"
|
||||
android:src="@drawable/ic_play_item" />
|
||||
</RelativeLayout>
|
||||
|
||||
<RelativeLayout
|
||||
@ -48,9 +51,9 @@
|
||||
android:id="@+id/tv_movie_source"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:maxLength="10"
|
||||
android:textColor="@color/gray_text"
|
||||
android:textSize="10sp"
|
||||
android:maxLength="10"
|
||||
tools:text="新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源新闻来源" />
|
||||
|
||||
<TextView
|
||||
@ -77,9 +80,9 @@
|
||||
android:id="@+id/iv_movie_close"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
android:layout_alignParentRight="true"
|
||||
android:src="@drawable/ic_close_item" />
|
||||
android:src="@drawable/ic_close_item"
|
||||
android:visibility="gone" />
|
||||
</RelativeLayout>
|
||||
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
android:layout_width="100dp"
|
||||
android:layout_height="60dp"
|
||||
android:layout_margin="2dp"
|
||||
tools:background="@drawable/temp_img" />
|
||||
tools:background="@drawable/ic_img_default" />
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="0dp"
|
||||
@ -26,11 +26,12 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:ellipsize="end"
|
||||
android:gravity="left"
|
||||
android:lines="2"
|
||||
android:maxLines="2"
|
||||
android:padding="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="@dimen/news_title_text_size"
|
||||
tools:text="左面封面,右面标题排版-在湖北代表团习近平强调组织牢密这张网" />
|
||||
tools:text="左面封面,右面标题排版-在湖北代表团习近平强调组织牢密这张网在湖北代表团习近平强调组织牢密这张网在湖北代表团习近平强调组织牢密这张网在湖北代表团习近平强调组织牢密这张网在湖北代表团习近平强调组织牢密这张网在湖北代表团习近平强调组织牢密这张网" />
|
||||
|
||||
|
||||
<RelativeLayout
|
||||
|
@ -18,6 +18,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:ellipsize="end"
|
||||
android:lines="2"
|
||||
android:maxLines="2"
|
||||
android:padding="5dp"
|
||||
android:textColor="@color/black"
|
||||
@ -77,5 +78,5 @@
|
||||
android:layout_width="100dp"
|
||||
android:layout_height="60dp"
|
||||
android:layout_margin="2dp"
|
||||
tools:background="@drawable/temp_img" />
|
||||
tools:background="@drawable/ic_img_default" />
|
||||
</LinearLayout>
|
@ -12,6 +12,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:ellipsize="end"
|
||||
android:lines="2"
|
||||
android:maxLines="2"
|
||||
android:padding="5dp"
|
||||
android:textColor="@color/black"
|
||||
@ -29,6 +30,7 @@
|
||||
android:id="@+id/tv_source"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerVertical="true"
|
||||
android:maxLength="10"
|
||||
android:textColor="@color/gray_text"
|
||||
android:textSize="10sp"
|
||||
@ -38,6 +40,7 @@
|
||||
android:id="@+id/tv_comment_num"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_toRightOf="@id/tv_source"
|
||||
android:textColor="@color/gray_text"
|
||||
@ -48,6 +51,7 @@
|
||||
android:id="@+id/tv_publish_date"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_toRightOf="@id/tv_comment_num"
|
||||
android:textColor="@color/gray_text"
|
||||
|
@ -2,5 +2,5 @@
|
||||
<resources xmlns:tools="http://schemas.android.com/tools">
|
||||
<dimen name="design_bottom_navigation_active_text_size" tools:override="true">12sp</dimen>
|
||||
<dimen name="design_bottom_navigation_text_size" tools:override="true">12sp</dimen>
|
||||
<dimen name="news_title_text_size" tools:override="true">13sp</dimen>
|
||||
<dimen name="news_title_text_size" tools:override="true">14sp</dimen>
|
||||
</resources>
|
@ -4,6 +4,7 @@ import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.app.ProgressDialog;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Bitmap;
|
||||
import android.icu.text.IDNA;
|
||||
import android.os.Bundle;
|
||||
import android.provider.Settings;
|
||||
@ -36,6 +37,9 @@ import com.bumptech.glide.Glide;
|
||||
import com.bumptech.glide.load.engine.DiskCacheStrategy;
|
||||
import com.bumptech.glide.load.resource.bitmap.CircleCrop;
|
||||
import com.bumptech.glide.request.RequestOptions;
|
||||
import com.bumptech.glide.request.target.CustomViewTarget;
|
||||
import com.bumptech.glide.request.target.SimpleTarget;
|
||||
import com.bumptech.glide.request.transition.Transition;
|
||||
import com.sucstepsoft.cm_utils.constant.PathConfig;
|
||||
import com.sucstepsoft.cm_utils.constant.PermissionConstants;
|
||||
import com.sucstepsoft.cm_utils.core.retrofit_net.BaseUrlApi;
|
||||
@ -57,6 +61,7 @@ import com.tengshisoft.modulemap.net.ApiMap;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
@ -257,6 +262,7 @@ public class ShowIconMapActivity extends BaseActivity {
|
||||
* @param data
|
||||
*/
|
||||
private void addMarkers(List<PlacePointBean.DataBean> data) {
|
||||
LogUtils.e(data.size());
|
||||
mBaiduMap.clear();
|
||||
List<OverlayOptions> markerOptionsList = new ArrayList<>();
|
||||
for (int i = 0; i < data.size(); i++) {
|
||||
@ -272,20 +278,31 @@ public class ShowIconMapActivity extends BaseActivity {
|
||||
ImageView cover = markerView.findViewById(R.id.iv_cover);
|
||||
String venuePanorama = dataBean.getVenuePanorama();
|
||||
String[] split = venuePanorama.split(",");
|
||||
LogUtils.e(BaseUrlApi.BASE_PLACE_IMG_IP + split[0]);
|
||||
Glide.with(mActivity)
|
||||
.asBitmap()
|
||||
.load(BaseUrlApi.BASE_PLACE_IMG_IP + split[0])
|
||||
.skipMemoryCache(true)
|
||||
.apply(RequestOptions.bitmapTransform(new CircleCrop())
|
||||
.error(R.drawable.ic_img_default_marker)
|
||||
.placeholder(R.drawable.ic_img_default_marker)
|
||||
.override(100, 100))
|
||||
.into(cover);
|
||||
BitmapDescriptor bitmapDescriptor = BitmapDescriptorFactory.fromView(markerView);
|
||||
MarkerOptions markerOptions = new MarkerOptions()
|
||||
.position(new LatLng(lat, lng))
|
||||
.extraInfo(bundle)
|
||||
.icon(bitmapDescriptor)
|
||||
.anchor(0.5f, 0.5f);
|
||||
markerOptionsList.add(markerOptions);
|
||||
.override(100, 100).diskCacheStrategy(DiskCacheStrategy.RESOURCE))
|
||||
.into(new SimpleTarget<Bitmap>() {
|
||||
@Override
|
||||
public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition<? super Bitmap> transition) {
|
||||
cover.setImageBitmap(resource);
|
||||
BitmapDescriptor bitmapDescriptor = BitmapDescriptorFactory.fromView(markerView);
|
||||
MarkerOptions markerOptions = new MarkerOptions()
|
||||
.position(new LatLng(lat, lng))
|
||||
.extraInfo(bundle)
|
||||
.icon(bitmapDescriptor)
|
||||
.anchor(0.5f, 0.5f);
|
||||
markerOptionsList.add(markerOptions);
|
||||
notifyMapView(markerOptionsList);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
mBaiduMap.addOverlays(markerOptionsList);
|
||||
@ -294,6 +311,13 @@ public class ShowIconMapActivity extends BaseActivity {
|
||||
}
|
||||
}
|
||||
|
||||
private void notifyMapView(List<OverlayOptions> markerOptionsList) {
|
||||
mBaiduMap.addOverlays(markerOptionsList);
|
||||
if (mCurrentLocation != null) {
|
||||
addMyMarker(mCurrentLocation.getLatitude(), mCurrentLocation.getLongitude());
|
||||
}
|
||||
}
|
||||
|
||||
private AlertDialog mGpsSettingDialog;
|
||||
|
||||
/**
|
||||
|
@ -120,6 +120,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="5dp"
|
||||
android:layout_weight="1"
|
||||
android:inputType="number"
|
||||
android:background="@null"
|
||||
android:hint="请输入验证码"
|
||||
android:textSize="13sp" />
|
||||
|
Loading…
Reference in New Issue
Block a user