Example #1
0
 public void GetNewsData()
 {
     Task.Run(async() =>
     {
         LoginResponse loginResponse = PingPongNews.Login();
         ListCategoriesResponse categoriesResponse = await PingPongNews.GetListCategories(1, 10);
         Device.BeginInvokeOnMainThread(() =>
         {
             if (categoriesResponse != null && categoriesResponse.success)
             {
                 var Categories = categoriesResponse.data.categories;
                 if (Categories.Count > 0)
                 {
                     foreach (var item in Categories)
                     {
                         this.Children.Add(new ItemNewsPage(item)
                         {
                             Title = item.name
                         });
                     }
                 }
             }
         });
     });
 }
Example #2
0
        private void CreateTabCategories()
        {
            Task.Run(async() => {
                LoginResponse loginResponse = PingPongNews.Login();

                ListCategoriesResponse categoriesResponse = await PingPongNews.GetListCategories(1, 10);

                //var ListCategoriesResponse = await GetListCategories();

                Device.BeginInvokeOnMainThread(() => {
                    if (categoriesResponse.success)
                    {
                        var Categories = categoriesResponse.data.categories;

                        foreach (var category in Categories)
                        {
                            Children.Add(new CategoryTab(category));
                        }
                    }
                    else
                    {
                        Debug.WriteLine("List Categories can't get");
                    }
                });
            });
        }
Example #3
0
        private void GetData()
        {
            // Debug.WriteLine("CurrentPage : " + (this.CurrentPage + 1));

            Task.Run(async() => {
                var ListCategoriesNewsResponse = await PingPongNews.GetCategoryNews((this.CurrentPage + 1), this.LimitRecord, _category.slug);

                Device.BeginInvokeOnMainThread(() => {
                    if (ListCategoriesNewsResponse.success)
                    {
                        var listNews = ListCategoriesNewsResponse.data.news;

                        if (listNews.Count > 0)
                        {
                            this._lstNews.AddRange(listNews);

                            // Debug.WriteLine("listNews : " + listNews.Count);
                        }

                        var listView         = this.Content as ListView;
                        listView.ItemsSource = null;
                        listView.ItemsSource = this._lstNews;

                        //Debug.WriteLine(this._category.name + " : " + _lstNews.Count);
                    }
                });
            });
        }
Example #4
0
        public DetailNewsPageViewModel()
        {
            Task.Run(() =>
            {
                NewsDetailResponse newsDetailResponse = null;

                _cache.TryGetValue(Helpers.Helper.Instance().news.slug, out newsDetailResponse);

                if (newsDetailResponse == null)
                {
                    newsDetailResponse = PingPongNews.GetNewsDetail(Helpers.Helper.Instance().news.slug);

                    _cache.Add(Helpers.Helper.Instance().news.slug, newsDetailResponse);
                }
                var data    = newsDetailResponse.data.content;
                imageSource = Helpers.Helper.Instance().news.image;
                string html =
                    "<html><head><style>img{max-width: 100%; width:auto; max-height: 250;}h1{color:blue;font-size: 100%}</style></head>" +
                    "<body>" +
                    "<img src=\"" + imageSource + "\">" +
                    data +
                    "<h1>Nguồn Sporttv.vn<h1>" +
                    "</body></html>";
                Device.BeginInvokeOnMainThread(() =>
                {
                    DetailNews = html;
                });
            });
        }
Example #5
0
 public void GetData()
 {
     Task.Run(async() =>
     {
         var ListCategoriesNewsResponse = await PingPongNews.GetCategoryNews((this.CurrentPage + 1), this.LimitRecord, _category.slug);
         Device.BeginInvokeOnMainThread(() =>
         {
             if (Device.RuntimePlatform == Device.iOS)
             {
                 var title = _category.name.Substring(0, 9);
                 titleNews = title;
             }
             else
             {
                 titleNews = _category.name;
             }
             listNews = new List <Sport.News.News>();
             if (ListCategoriesNewsResponse != null && ListCategoriesNewsResponse.success)
             {
                 var listNews = ListCategoriesNewsResponse.data.news;
                 if (listNews.Count > 0)
                 {
                     this.listNews.AddRange(listNews);
                 }
             }
         });
     });
 }
        private void GetNewsDetail()
        {
            NewsDetailResponse newsDetailResponse = null;

            _cache.TryGetValue(_news.slug, out newsDetailResponse);

            if (newsDetailResponse == null)
            {
                newsDetailResponse = PingPongNews.GetNewsDetail(_news.slug);

                _cache.Add(_news.slug, newsDetailResponse);
            }


            if (newsDetailResponse.success)
            {
                var data = newsDetailResponse.data.content;
                //lblContent.Text = "<!DOCTYPE><html><body>" + data + "</body></html>";
                //lblContent.Text = "<html><body><h1>Xamarin.Forms</h1><p>Welcome to WebView.</p></body></html>";
                // var htmlDoc = new HtmlAgilityPack.HtmlDocument();
                // htmlDoc.LoadHtml(data);
                //var header = htmlDoc.DocumentNode.Descendants("header")
                //               .Where(e => e.GetAttributeValue("class", "") == "article__title");
                //var contentNews = htmlDoc.DocumentNode.Descendants("section")
                //    .Where(e => e.GetAttributeValue("class", "") == "article__text type");
                //var htmlNodes = contentNews as HtmlNode[] ?? contentNews.ToArray();
                //var contentNode = htmlNodes.First().Descendants("ul")
                //    .Where(e => e.GetAttributeValue("class", "") == "related_post");
                //var enumerable = contentNode as HtmlNode[] ?? contentNode.ToArray();
                //if (enumerable.Count() != 0)
                //{
                //    htmlNodes.First().RemoveChild(enumerable.First());
                //}
                //   string content = header.First().InnerHtml;
                // string content = htmlNodes.First().InnerHtml;
                string html =
                    "<html><head><style>img{max-width: 100%; width:auto; max-height: 250;}h1{color:blue;font-size: 100%}</style></head><body>" +
                    data +
                    "<h1>Nguồn gametv.vn<h1></body></html>";

                //lblContent = new HtmlFormattedLabel()
                //{
                //    FontSize = 12,
                //    Text = data
                //};
                //contentLayout.Children.Add(lblContent);
                htmlSource.Html = html;
                webview.Source  = htmlSource;
            }
            else
            {
                Debug.WriteLine("CategoryItemDetail: " + newsDetailResponse.message);
            }
        }
Example #7
0
        public async Task GetData()
        {
            Debug.WriteLine("ThreadId: " + Thread.CurrentThread.ManagedThreadId.ToString());
            LoginResponse          loginResponse      = PingPongNews.Login();
            ListCategoriesResponse categoriesResponse = await PingPongNews.GetListCategories(1, 10);

            Device.BeginInvokeOnMainThread(() =>
            {
                if (categoriesResponse != null && categoriesResponse.success)
                {
                    var Categories = categoriesResponse.data.categories;
                    if (Categories.Count > 0)
                    {
                        foreach (var item in Categories)
                        {
                            this.Children.Add(new ItemNewsPage(item));
                        }
                    }
                }
            });
        }