public override async Task InitializeAsync(object navigationData) { if (IsInitialize == true) { return; } model = await articlePresenter.GetClientArticle(Id); //从本地数据库获取 IsProgressing |= await RenewDailyUI(model) == false; ProgressBarRunning(); await Task.Run(async() => { if (model.Title == "" || (model.UpdateTime != DateTime.MinValue && model.UpdateTime.AddMinutes(15) < DateTime.Now)) { model = await articlePresenter.GetServiceArticle(Id); await RenewDailyUI(model); IsProgressing = false; } }); IsInitialize = true; }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); Id = Intent.GetIntExtra("id", 0); articlePresenter = new ArticlePresenter(this); handler = new Handler(); StatusBarCompat.SetOrdinaryToolBar(this); toolbar = FindViewById <Toolbar>(Resource.Id.toolbar); toolbar.SetNavigationIcon(Resource.Drawable.back_24dp); SetSupportActionBar(toolbar); SupportActionBar.SetDisplayHomeAsUpEnabled(true); toolbar.SetNavigationOnClickListener(this); toolbar.SetOnMenuItemClickListener(this); swipeRefreshLayout = FindViewById <SwipeRefreshLayout>(Resource.Id.swipeRefreshLayout); swipeRefreshLayout.SetColorSchemeResources(Resource.Color.primary); swipeRefreshLayout.SetOnRefreshListener(this); scrollView = FindViewById <NestedScrollView>(Resource.Id.scrollView); txtTitle = FindViewById <TextView>(Resource.Id.txtTitle); imgAvatar = FindViewById <ImageView>(Resource.Id.llAvatar); txtAuthor = FindViewById <TextView>(Resource.Id.txtAuthor); txtPostdate = FindViewById <TextView>(Resource.Id.txtPostdate); txtBody = FindViewById <WebView>(Resource.Id.txtBody); txtBody.Settings.JavaScriptEnabled = true; txtBody.Settings.DomStorageEnabled = true; txtBody.Settings.LoadsImagesAutomatically = true; txtBody.Settings.DefaultTextEncodingName = "utf-8"; txtBody.SetWebViewClient(BodyWebViewClient.With(this)); txtBody.ScrollBarStyle = ScrollbarStyles.InsideOverlay; txtBody.Settings.SetSupportZoom(false); txtBody.Settings.BuiltInZoomControls = false; txtBody.Settings.CacheMode = CacheModes.CacheElseNetwork; txtBody.Settings.SetLayoutAlgorithm(WebSettings.LayoutAlgorithm.SingleColumn); var jsInterface = new WebViewJSInterface(this); txtBody.AddJavascriptInterface(jsInterface, "openlistner"); jsInterface.CallFromPageReceived += delegate(object sender, WebViewJSInterface.CallFromPageReceivedEventArgs e) { PhotoActivity.Start(this, e.Result.Split(','), e.Index); }; txtDigg = FindViewById <TextView>(Resource.Id.txtDigg); txtRead = FindViewById <TextView>(Resource.Id.txtRead); txtComments = FindViewById <TextView>(Resource.Id.txtComments); txtBookmark = FindViewById <TextView>(Resource.Id.txtBookmark); swipeRefreshLayout.Post(async() => { await articlePresenter.GetClientArticle(Id); }); shareAction = new ShareAction(this).SetDisplayList(SHARE_MEDIA.Weixin, SHARE_MEDIA.WeixinCircle, SHARE_MEDIA.WeixinFavorite, SHARE_MEDIA.Sina).SetShareboardclickCallback(this); }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); slug = Intent.GetIntExtra("slug", 0); handler = new Handler(); articlePresenter = new ArticlePresenter(this); toolbar = FindViewById <Toolbar>(Resource.Id.toolbar); toolbar.SetNavigationIcon(Resource.Drawable.back_24dp); SetSupportActionBar(toolbar); SupportActionBar.SetDisplayHomeAsUpEnabled(true); toolbar.SetNavigationOnClickListener(this); toolbar.SetOnMenuItemClickListener(this); coordinatorLayout = FindViewById <CoordinatorLayout>(Resource.Id.main_content); collapsingToolbar = FindViewById <CollapsingToolbarLayout>(Resource.Id.collapsingtoolbar); appbar = FindViewById <AppBarLayout>(Resource.Id.appbar); appbar.AddOnOffsetChangedListener(this); swipeRefreshLayout = FindViewById <SwipeRefreshLayout>(Resource.Id.swipeRefreshLayout); swipeRefreshLayout.SetColorSchemeResources(Resource.Color.primary); swipeRefreshLayout.SetOnRefreshListener(this); scrollView = FindViewById <NestedScrollView>(Resource.Id.scrollView); scrollView.ViewTreeObserver.AddOnScrollChangedListener(this); toolbarTitle = FindViewById <TextView>(Resource.Id.toolbarTitle); titleImage = FindViewById <ImageView>(Resource.Id.titleImage); imgAvatar = FindViewById <ImageViewAsync>(Resource.Id.llAvatar); org = FindViewById <ImageView>(Resource.Id.org); txtAuthor = FindViewById <TextView>(Resource.Id.txtAuthor); txtTitle = FindViewById <TextView>(Resource.Id.txtTitle); txtBio = FindViewById <TextView>(Resource.Id.txtBio); articleContent = FindViewById <ArticleWebView>(Resource.Id.postContent); txtTime = FindViewById <TextView>(Resource.Id.txtTime); txtGood = FindViewById <TextView>(Resource.Id.txtGood); txtComments = FindViewById <TextView>(Resource.Id.txtComments); swipeRefreshLayout.Post(async() => { await articlePresenter.GetClientArticle(slug); }); }