RSS Reader 2.0
Използвайки интегрираната среда за разработка Visual Studio и езика за програмиране C# ще разработим мулти-платформено мобилно приложение за четене на Интернет новинарски емисии от RSS източници.
- Стартирайте интегрираната среда за разработка Visual Studio.
- Създайте нов проект: Visual C# > Cross-Platform > Mobile App (Xamarin.Forms).
- За име на проекта запишете: RSS Reader 2.0.
Добавете нов клас наречен FeedReader.cs, който ще служи за съхранение на данни от новинарската емисия.
FeedReader.cs
using System.Collections.Generic;
using System.Linq;
using System.Xml.Linq;
namespace RSS_Reader_2._0
{
// RSS Feed Item
public class FeedItem
{
public string Title { get; set; }
public string Description { get; set; }
public string Link { get; set; }
public string PubDate { get; set; }
}
// RSS Feed Reader
public class FeedReader
{
public IEnumerable<FeedItem> ReadFeed(string url)
{
var rssFeed = XDocument.Load(url);
var posts = from item in rssFeed.Descendants("item")
select new FeedItem
{
Title = item.Element("title").Value,
Description = item.Element("description").Value,
Link = item.Element("link").Value,
PubDate = item.Element("pubDate").Value
};
return posts;
}
}
}
Файлът MainPage.xaml съдържа изходния код от дизайна на потребителския интерфейс на разработваното приложение и се пише на езика XAML. Копирайте (Ctrl+C) и поставете (Ctrl+V) програмният фрагмент даден по-долу във Вашето приложение.
MainPage.xaml
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="RSS_Reader_2._0.MainPage">
<!-- RSS Reader 2.0 -->
<StackLayout Padding="20">
<Label Text="RSS Reader 2.0" FontSize="Medium" />
<Entry x:Name="EntryURL" Text="http://www.minchev.eu/rss/" />
<Button Text="Download" Clicked="OnButtonClicked" />
<ListView x:Name="ListRSS">
<ListView.ItemTemplate>
<DataTemplate>
<TextCell Text="{Binding Title}" Detail="{Binding PubDate}" />
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</StackLayout>
</ContentPage>
Файлът MainPage.xaml.cs съдържа изходния код от бизнес логиката на разработваното приложение и се пише на програмният език C#. Копирайте (Ctrl+C) и поставете (Ctrl+V) програмният фрагмент даден по-долу във Вашето приложение.
MainPage.xaml.cs
using System;
using System.Collections.ObjectModel;
using Xamarin.Forms;
namespace RSS_Reader_2._0
{
/// <summary>
/// RSS Reader 2.0
/// </summary>
public partial class MainPage : ContentPage
{
// Constructor
public MainPage()
{
InitializeComponent();
}
// Button Event Handler
void OnButtonClicked(object sender, EventArgs args)
{
var link = this.EntryURL.Text;
var posts = new FeedReader().ReadFeed(link);
this.ListRSS.ItemsSource = new ObservableCollection<FeedItem>(posts);
}
}
}
Стартирайте приложението от менюто: Debug > Start Debugging или като натиснете клавиш F5.
Фиг.67 Разработка на мултиплатформено мобилно приложение за четене на Интернет новинарски емисии от RSS източници.
Фиг.68 Тестване на на мултиплатформено мобилно приложение за четене на Интернет новинарски емисии от RSS източници- Android Emulator 7.1 (API 25).