public static void startActivity(Context context, Recommend.RecommendBooks recommendBooks, bool isFromSD) { var recommendBooksStr = JsonConvert.SerializeObject(recommendBooks); context.StartActivity(new Intent(context, typeof(ReadActivity)) .PutExtra(INTENT_BEAN, recommendBooksStr) .PutExtra(INTENT_SD, isFromSD)); }
public override void initDatas() { var recommendBooksStr = Intent.GetStringExtra(INTENT_BEAN); recommendBooks = JsonConvert.DeserializeObject <Recommend.RecommendBooks>(recommendBooksStr);; bookId = recommendBooks._id; isFromSD = Intent.GetBooleanExtra(INTENT_SD, false); if (Intent.ActionView.Equals(Intent.Action)) { String filePath = Uri.Decode(Intent.DataString.Replace("file://", "")); String fileName; if (filePath.LastIndexOf(".") > filePath.LastIndexOf("/")) { fileName = filePath.Substring(filePath.LastIndexOf("/") + 1, filePath.LastIndexOf(".")); } else { fileName = filePath.Substring(filePath.LastIndexOf("/") + 1); } CollectionsManager.getInstance().remove(fileName); // 转存 File desc = FileUtils.createWifiTranfesFile(fileName); FileUtils.fileChannelCopy(new File(filePath), desc); // 建立 recommendBooks = new Recommend.RecommendBooks(); recommendBooks.isFromSD = true; recommendBooks._id = fileName; recommendBooks.title = fileName; isFromSD = true; } MessageBus.Default.Register <DownloadProgress>(showDownProgress); MessageBus.Default.Register <DownloadMessage>(downloadMessage); showDialog(); mTvBookReadTocTitle.Text = (recommendBooks.title); //mTtsPlayer = TTSPlayerUtils.getTTSPlayer(); //ttsConfig = TTSPlayerUtils.getTtsConfig(); intentFilter.AddAction(Intent.ActionBatteryChanged); intentFilter.AddAction(Intent.ActionTimeTick); CollectionsManager.getInstance().setRecentReadingTime(bookId); System.Reactive.Linq.Observable.Timer(new TimeSpan(0, 0, 1)) // 1s .Subscribe(_ => { //延迟1秒刷新书架 EventManager.refreshCollectionList(); }); }
/** * 加入收藏 * * @param bean */ public bool add(Recommend.RecommendBooks bean) { if (isCollected(bean._id)) { return(false); } List <Recommend.RecommendBooks> list = getCollectionList(); if (list == null) { list = new List <Recommend.RecommendBooks>(); } list.Add(bean); putCollectionList(list); EventManager.refreshCollectionList(); return(true); }
/** * 显示加入书架对话框 * * @param bean */ private void showJoinBookShelfDialog(Recommend.RecommendBooks bean) { new AlertDialog.Builder(mContext) .SetTitle(GetString(Resource.String.book_read_add_book)) .SetMessage(GetString(Resource.String.book_read_would_you_like_to_add_this_to_the_book_shelf)) .SetPositiveButton(GetString(Resource.String.book_read_join_the_book_shelf), (sender, e) => { var dialog = sender as AlertDialog; dialog.Dismiss(); bean.recentReadingTime = FormatUtils.getCurrentTimeString(FormatUtils.FORMAT_DATE_TIME); CollectionsManager.getInstance().add(bean); Finish(); }) .SetNegativeButton(GetString(Resource.String.book_read_not), (sender, e) => { var dialog = sender as AlertDialog; dialog.Dismiss(); Finish(); }) .Create() .Show(); }
public void showBookDetail(BookDetail data) { Glide.With(mContext) .Load(Constant.IMG_BASE_URL + data.cover) //.Placeholder(Resource.Drawable.cover_default) .Transform(new GlideRoundTransform(mContext)) .Into(mIvBookCover); mTvBookTitle.Text = (data.title); mTvAuthor.Text = (Java.Lang.String.Format(GetString(Resource.String.book_detail_author), data.author)); mTvCatgory.Text = (Java.Lang.String.Format(GetString(Resource.String.book_detail_category), data.cat)); mTvWordCount.Text = (FormatUtils.formatWordCount(data.wordCount)); mTvLatelyUpdate.Text = (FormatUtils.getDescriptionTimeFromDateString(data.updated)); mTvLatelyFollower.Text = data.latelyFollower.ToString(); mTvRetentionRatio.Text = (TextUtils.IsEmpty(data.retentionRatio) ? "-" : Java.Lang.String.Format(GetString(Resource.String.book_detail_retention_ratio), data.retentionRatio)); mTvSerializeWordCount.Text = (data.serializeWordCount < 0 ? "-" : data.serializeWordCount.ToString()); tagList.Clear(); tagList.AddRange(data.tags); times = 0; showHotWord(); mTvlongIntro.Text = (data.longIntro); mTvCommunity.Text = (Java.Lang.String.Format(GetString(Resource.String.book_detail_community), data.title)); mTvPostCount.Text = (Java.Lang.String.Format(GetString(Resource.String.book_detail_post_count), data.postCount)); recommendBooks = new Recommend.RecommendBooks(); recommendBooks.title = data.title; recommendBooks._id = data._id; recommendBooks.cover = data.cover; recommendBooks.lastChapter = data.lastChapter; recommendBooks.updated = data.updated; refreshCollectionIcon(); }
//添加收藏需要,所以跳转的时候传递整个实体类 public static void startActivity(Context context, Recommend.RecommendBooks recommendBooks) { startActivity(context, recommendBooks, false); }