button.Click += async (sender, e) =>
{
var client = new HttpClient();
using (var reader = new StreamReader(await client.GetStreamAsync("xxx")))
{
var deserializer = new XmlSerializer(typeof(Rss));
var latest = deserializer.Deserialize(reader) as Rss;
var feed = latest.Channel.Items
.Where(x => x.Link.Contains("xamarin"))
.Select(x => x.Title).ToList();
}
};
[Register ("TodoListViewController")]
partial class TodoListViewController
{
[Outlet]
[GeneratedCode ("iOS Designer", "1.0")]
UIButton LoginButton { get; set; }
...
}
LoginButton.TouchUpInside += (object sender,
EventArgs e) => {
// TODO: add logic here
}
ViewController.designer.cs
ViewController.cs
public class MainActivity : Activity
{
...
void OnClick(object sender, EventArgs e)
{
var intent = new Intent(this, typeof(Activity2));
base.StartActivity(intent);
}
}
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage x:Class="App1.Views.XamlPage"
...
Title="Login Page">
<StackLayout Padding="8" Spacing="4">
<Image Source="/Images/Xamagon.png"
HeightRequest="300"
WidthRequest="300" />
<Label FontSize="Large"
Text="Xamarin.Forms Login Page" />
<Entry x:Name="entry"
Text="{Binding Name}" />
<Button x:Name="loginButton"
Clicked="LoginButton_Clicked"
Text="Login" />
</StackLayout>
</ContentPage>
public class CSharpPage : ContentPage
{
public CSharpPage()
{
var image = new Image { ... };
var label = new Label {... };
var entry = new Entry { ... };
var loginButton = new Button {... };
loginButton.Clicked += LoginButton_Clicked;
Title = "Login Page";
Content = new StackLayout
{
Children =
{
image,
label,
entry,
loginButton
},
};
}
}
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法
2018年のXamarinの概要と活用方法

2018年のXamarinの概要と活用方法

  • 8.
    button.Click += async(sender, e) => { var client = new HttpClient(); using (var reader = new StreamReader(await client.GetStreamAsync("xxx"))) { var deserializer = new XmlSerializer(typeof(Rss)); var latest = deserializer.Deserialize(reader) as Rss; var feed = latest.Channel.Items .Where(x => x.Link.Contains("xamarin")) .Select(x => x.Title).ToList(); } };
  • 12.
    [Register ("TodoListViewController")] partial classTodoListViewController { [Outlet] [GeneratedCode ("iOS Designer", "1.0")] UIButton LoginButton { get; set; } ... } LoginButton.TouchUpInside += (object sender, EventArgs e) => { // TODO: add logic here } ViewController.designer.cs ViewController.cs
  • 16.
    public class MainActivity: Activity { ... void OnClick(object sender, EventArgs e) { var intent = new Intent(this, typeof(Activity2)); base.StartActivity(intent); } }
  • 25.
    <?xml version="1.0" encoding="utf-8"?> <ContentPage x:Class="App1.Views.XamlPage" ... Title="Login Page"> <StackLayout Padding="8" Spacing="4"> <Image Source="/Images/Xamagon.png" HeightRequest="300" WidthRequest="300" /> <Label FontSize="Large" Text="Xamarin.Forms Login Page" /> <Entry x:Name="entry" Text="{Binding Name}" /> <Button x:Name="loginButton" Clicked="LoginButton_Clicked" Text="Login" /> </StackLayout> </ContentPage> public class CSharpPage : ContentPage { public CSharpPage() { var image = new Image { ... }; var label = new Label {... }; var entry = new Entry { ... }; var loginButton = new Button {... }; loginButton.Clicked += LoginButton_Clicked; Title = "Login Page"; Content = new StackLayout { Children = { image, label, entry, loginButton }, }; } }