►
From YouTube: S109 - What's New in Xamarin Forms?
Description
Xamarin.Forms has long been the best way for .NET developers to build cross-platform applications for Android, iOS, and Windows, and in 2018 it's gotten even better with the introduction of great new capabilities like CSS, FlexLayout, Visual State Manager, and much more. Come learn what's new!
A
Hello
welcome
to
another
dotnet
comp
presentation:
I
am
your
host
for
the
moment.
David
Orton,
al
zaman
forms,
program
manager
and
I'm
really
excited
you've
joined
us
here.
I
have
to
start
off.
By
doing
one
thing,
though,
I
understand
nobody
has
done
a
spin
in
the
chair
yet
so
that
had
to
happen.
I,
don't
I,
don't
know
how
people
resist
doing
that
so,
but
hey,
listen,
I
I
started
off
with
40
sides,
I
pruned
it
down
to
51,
I,
think
I'm
up
to
52
or
more
so
we're
gonna
go
fast
and
furious.
A
I
have
a
lot
of
updates
for
you
on
xamarin
forums
and
I
want
to
make
sure
I
get
through
them
all.
So
if
you
have
questions
as
we
go,
definitely
put
them
in
the
the
chat.
Wherever
that
thing
is
and
I'll
make
sure
that
I
try
to
get
to
as
many
of
them
as
I
can,
at
the
end
time
permitting
alright.
So
here
we
go
so
first,
let's
talk
about
some
of
the
basic
details,
just
to
make
sure
that
everybody
knows
where
we
stand
today.
A
3
100
is
our
current
stable
release
of
xamarin
forms
and
3.
2.0
is
our
current
pre-release,
so
if
you
haven't
been
checking
the
pre
releases,
please
do
because
there's
a
lot
of
really
good
stuff
in
there
and
we
depend
heavily
on
your
feedback
to
to
know
how
we're
doing
right
is
it?
Is
it
stable?
Is
it
meeting
your
needs
and
your
particular
scenarios?
We
obviously
dog
food
and
test
heavily
as
well,
and
you
may
see
that
I
file
plenty
of
bugs
as
pre-releases
come
out,
and
then
we
also
have
the
the
next
stuff
right.
A
Our
master
builds,
which
we
come
out,
which
come
out
nightly
so
nightly
means
that
as
long
as
the
the
builds
are
all
green
and
we're
good
to
go,
then
those
will
get
posted
to
this
feed.
This
might
get
feed
so
be
aware
of
those
things
check.
Those
out
please
in
terms
of
when
300
will
go
stable,
we're
on
pre-release
3
that
went
up
a
couple
of
days
ago,
we're
hoping
that's
a
stable
candidate.
A
A
So
if
you
want
to
know
what
the
current
sprint
is,
what
the
work
is
in
that
sprint,
we
do
3
week
Sprint's
as
well
as,
what's
blocking
for
upcoming
next
releases
check
out
our
github
prod
you'll
find
lots
of
really
good
up-to-the-moment
information
there
and
then
the
feature
roadmap,
so
in
the
wiki,
in
addition
to
the
future
roadmap,
there's
other
things.
But
if
you
want
to
know
what
we're
working
on
where
we're
going,
it
doesn't
necessarily
reflect
absolutely
every
detail.
You
know
we
do.
A
You
might
do
a
spike
here
and
there
to
investigate
some
things,
but
in
terms
of
what
you
can
expect
in
general
timeframes
of
when
you
can
expect
to
receive
it,
that's
the
place
to
be,
and
then,
in
addition
to
the
feature
roadmap,
there's
also
details
about
which
platforms
are
currently
being
supported
and
what
the
status
is
of
those
platforms.
So
if
you
are
interested
in
Mac,
OS
GDK
for
Linux,
Tizen
or
WPF
support,
that's
a
place
where
you
can
find
good
information
on
that
to
know
exactly
where
things
stand
all
right.
A
So
here's
what
we're
gonna
dive
into
we're
gonna
talk
about
some
big
things,
some
little
things
and
some
next
things
and
I.
Imagine
based
on
the
feedback
that
I've
gotten
on
Twitter,
as
well
as
through
the
community,
Sam
and
slack
channel
that
the
next
things
is
really
what
you're,
mostly
interested
in
so
I'll
barrel
through
the
big
and
the
little
and
we'll
get
to
the
next.
But
you
guys
stick
around
for
that.
So
that's
the
price
you
get
to
pay
all
right.
A
So
let's
talk
about
big
things
first,
so
the
first
big
thing
that
I
want
to
talk
about
is
that
my
son,
just
today,
just
before
I
came
in
here
and
got
his
driver's
license
and
if
you
happen
to
be
in
this
general
area
of
st.
Louis,
West
County,
you
may
want
to
avoid
some
of
these
roads.
I
know
that's
the
common
thing.
Every
parent
says
when
their
kid
ventures
out
on
the
road.
A
My
concern,
mostly,
is
that
you
may
not
get
there
on
time
because
he's
probably
gonna
be
going
the
speed
limit
as
he
should,
but
why
am
I
bringing
this
up?
First
of
all,
I'm
obviously
proud
of
my
kid,
so
congratulations
Declan
on
getting
your
driver's
license,
but,
most
importantly,
you
know
when
it
comes
to
teaching
your
kids
to
drive.
You
end
up
hearing
yourself
repeating
things
over
and
over
and
over
again
and
emphasizing
some
of
the
basics
and
some
of
the
fundamentals
that
you
yourself
may
have
not
been
paying
much
attention
to.
A
So
this
is
what
I'm
going
to
start
by
talking
about
in
the
big
things
over
the
past
year,
we've
shipped
quite
a
quite
a
few
things
that
are
hugely
beneficial
to
you
and
I
want
to
make
sure
that
everybody
is
aware
of
them
and
hopefully
using
them.
So
first
of
all
is
we'll
see
and
compiled
bindings.
An
we'll
see
is
compiled
zamel.
So
that's
going
to
give
you
compile
time
checking
of
your
zamel.
A
You
don't
have
to
wait
till
runtime
to
find
out
if
it's
going
to
blow
up
on
you
and
then
compile
bindings
is
going
to
give
you
that
little
bit
of
performance
boost
for
all
of
your
bindings.
You
specify
your
data
type
here
and,
for
example,
here
I've
got
a
named
color,
which
is
coming
off
of
a
view
model
and
then
I've
got
I'm
binding
to
my
color.
So
do
simple
things
like
this:
it
can
really
improve
the
performance
of
your
app
and
get
you
there.
A
Something
in
terms
of
Sam
will
see
if
you
were
at
all
concerned
about
the
impact
on
your
build
times
now.
We
recently
did
quite
a
bit
of
work
on
build
times
and
we
got
it
down
the
smart
hotel,
360
app
as
a
matter
of
fact
that
miguel
was
showcasing
in
the
in
the
first
presentation.
In
that
particular
case,
sam
will
see
was
taking
upwards
of
seven
seconds
in
some
situations
and
we
got
it
down
to
a
second
or
below
so
plenty
of
good
work
happening
there,
and
also
I
mean
I
just
really
have
to
emphasize.
A
If
you
haven't
watched
yet
Miguel's
portion
of
the
presentation.
This
morning,
please
do
a
lot
of
really
good
work
in
the
tooling,
especially
build
and
compile
times,
and
that
loop
that
you
have
in
terms
of
how
quickly
you
can
see
your
changes
is
happening
and
I'm
just
I'm,
focusing
on
the
SDK
side
of
things.
So
I'm
not
talking
about
tooling
and
build
system
stuff,
but
know
that
that
is
very
important
to
us.
We
ourselves
are
very
much
involved
with
it
from
the
sdk
standpoint,
so
check
that
out
very
good
information
there.
A
Is
you
get
you
get
a
button
renderer
with
the
app
compat
button
inside
of
it
so
in
in
terms
of
Android
view,
inflation,
you
actually
inflate
two
views,
so
that's
not
ideal
and
more
views
slows
things
down,
create
deeper
nesting
in
your
and
your
UI.
So
what
we've
done
with
fast
renders
to
fast
we
went
too
fast
renders
we
were
able
to
refactor
out
everything
that
was
in
that
button
renderer
and
make
sure
that
everything
still
worked
with
the
app
compat
button.
A
So
this
greatly
reduces
the
UI
that
needs
to
get
inflated
to
do
your
app
and
thus
improves
performance
both
in
terms
of
runtime
and
startup.
So,
to
enable
this
we
have
a
set
Flags
method.
You
call
this
just
before
you
call
the
forms
in
it
and
you
pass
in
the
fast
renderers
experimental
now,
I
get
the
question
all
the
time.
Is
it
just
experimental?
Why
is
it
experimental
when's
it
going
to
be
not
experimental?
When
are
you
going
to
unseal
it,
and
let
us
extend
these
particular
renderers
for
the
the
button.
A
The
image
in
the
label
I
think
that's
coming
very
soon,
and
the
shell
work,
which
is
the
tease
for
what
we're
gonna
be
talking
about
later,
leads
us
into
some
of
the
things
that
will
allow
us
to
do
that.
But
for
now
this
is
what
it
is.
Lots
of
customers
are
using
it
and
having
good
success
with
it.
I
myself
use
it
all
the
time.
A
Let
us
know,
of
course,
file
issues
if
you
have
issues
with
it,
but
the
experimental
is
they're
more
of
just
a
warning,
but
it's
been
out
for
six,
no
more
than
six
months
almost
a
year
now
so
use
it.
It
makes
your
stuff
faster,
so
layout
compression
this
pairs
very
well
with
fast
renders,
and
it's
kind
of
in
the
same
theme.
So
if
you
consider
this
particular
layout,
you
have
your
content
page
within
there.
You
have
a
stack
layout
and
then
within
that
you've
got
a
grid.
A
A
That's
a
significant
improvement,
which
will
improve
every
aspect
of
the
performance
of
your
Android
applications.
All
right.
Another
perfect
for
you
is
native
forms,
so
native
forms
is
where
you
can
take
a
salmon
forms,
UI
and
embed
it
directly
into
an
iOS
or
Android
or
WPF,
or
mac
OS
or
GDK
application,
and
what
this
allows
you
to
do
is
instead
of
xamarin
forms
being
necessarily
the
driver
and
the
shin
and
the
container
for
your
whole
application.
A
You
can
have
your
native
UI
and
just
where
you
want
that
shared
UI
or
those
more
suitable,
you
i2z
on
forums
or
just
you
want
to
be
able
to
share
more
xamarin
forms
across
everything
that
you're
doing.
Then
you
can
use
native
forms
to
embed
that
it
does
work
with
Sam,
we'll
see
bindings
message,
Center,
dependency,
services
and
essentially,
what
you
end
up
doing
is
you.
You
call
a
create
method,
a
simple
helper
on
the
particular
content
page
that
you
want
to
embed
and
it
will
hand
off
to
you
the
native
control
element
on
iOS.
A
That's
a
UI
view
container
our
UI
view.
Controller.
Excuse
me
activity
on
Android,
a
fragment
on
Android
or
a
framework
element
on
uwp
and
then
the
appropriate
elements
on
those
other
platforms
that
I
mentioned
so
yep.
Here's
a
quick
example.
If
you
go
look
at
the
smart
hotel,
360
repository
up
on
github
and
check
out
the
maintenance
application,
I
believe
is
what
this
is
called.
A
A
Page
that
hands
me
my
UI
view
controller
and
I
can
push
that
onto
my
navigation
stack
just
like
I
push
a
normal
UI
view
controller
when
I'm
doing
iOS
development,
but
again
huge
benefit
here,
I
hear
from
customers
all
the
time
that
they're
benefiting
from
this
matter
of
fact.
Two
days
ago,
I
heard
from
a
customer
who
said
how
do
I
do
XYZ
on
you,
WP
with
salmon
forms
and
I
was
like.
A
You
know
you
ought
to
look
at
native
native
forms
and
it
took
me
a
couple
days
to
get
back
to
him
and
he
says
actually
that's
exactly
what
I
did
it's
working?
Fine,
so
no,
no
complaints
there.
So
that's
great
another
feature
that
I
wanna
make
sure
everybody's
aware
of
is
left
to
right.
So
when
you
are
doing
your
globalization
of
your
applications,
you
need
to
support
those
languages
and
cultures
that
that
have
left
to
right.
This
is
now
supported
very
easily
for
you,
it's
a
lot
of
code.
A
No,
it's
not
a
lot
of
code,
it's
one
line
of
code,
so
you
set
the
flow
direction
on
the
elements
or
on
the
context
in
which
you
want
to
change
that
direction,
and
it's
as
simple
as
that.
We
provide
for
you
a
device
that
flow
direction
which
will
surface
the
PERT,
the
the
user's
phone's
settings
and
tell
you
which
direction
they
want
and
then
you
can
customize
it
from
there
and
you
can
override
it
at
any
level.
A
Down
the
down
the
UI
tree
that
you
need
to,
if
you
were
paying
attention,
build
view
or
any
time
since
you've
heard
us
talk
about
flex
layout,
and
this
is
a
flexbox
inspired
layout
system.
So,
if
you're
coming
from
a
web
development
standpoint,
this
will
be
very
familiar
to
you,
one
of
the
nicest
things
about
this.
Is
it
prioritizes
distribution
and
alignment
of
your
content?
It's
great
for
adaptive,
layouts
and
I
actually
have
a
blog
about
that
which
I
have
a
link
to
below
you
have.
A
So,
if
you
have
multiple
form
factors,
different
things
that
you
need
to
account
for
which,
if
you're
doing
any
kind
of
mobile
development,
you
absolutely
do
yeah
within
iOS
and
especially
within
Android,
you
need
to
accommodate
many
different
sizes,
so
this
is
fantastic
for
that
it
promotes
also
a
flatter
layout.
So,
just
like
I
was
talking
about
layout,
compression
and
fast
renderers
in
terms
of
impact
on
performance.
A
It's
really
important
to
reduce
your
UI
nesting,
wherever
you
can
and
flex
layout,
because
of
the
way
that
it
does
layout
is
really
good
for
that
sort
of
thing.
So,
oh
my
blog
just
flew
by
come
back
blog,
so
hit
that
blog.
If
you
want
to
get
a
couple
more
details
and
see
some
examples
and
samples
of
that
and
get
you
going
with
that,
so
CSS
styles
are
expressed
via
cascading
style
sheets
they're
parsed
at
runtime,
and
this
does
not
replace
sam'l
styles.
A
It
does
support
a
ton
of
properties
out
of
box,
but
not
all,
and
the
styles
are
applied
one
by
one
in
definition,
order
which
is
the
cascading
aspect
of
CSS.
So
this
is
a
really
well
it's
a
great
feature
to
pair,
especially
with
Flex
layout,
because
you
can
start
grabbing
samples
from
the
web
and
use
them
pretty
much
as
is,
and
that's
a
very
cool
feature.
I
know
that
Miguel
was
a
huge
fan
of
the
CSS
as
I
think
he
mentioned
this
morning
as
mi.
But
again
it
doesn't
replace
animal
styles.
A
It's
really
your
preference
in
terms
of
what
you
want
to
do
and
the
style
is
defined
on
the
item
itself,
we're
always
applied
last
things
are
a
little
out
of
sync
of
my
computer,
so
I'm
double-checking
all
right.
So
here's
a
quick
video
demonstrating
some
flex
layout-
you
can
see
that
I'm
specifying
a
direction
so
that
I
can
do
column.
A
I
have
CSS
over
here
on
the
side
as
well,
so
you
can
see
that
that's
working
in
concert
and
I'm
overriding
the
Flex
layout
settings
here
that
we're
specified
over
there
and
there
we
go
so
several
samples
like
this,
this
particular
UI
is
actually
in
the
conference
of
vision,
app,
which
is
up
on
Microsoft
github.com,
Microsoft
conference
vision.
You
can
check
that
out,
but
I've
got
actually
quite
a
few
flex
different
different
layouts
that
you
can
accomplish-
and
this
is
by
no
means
an
exhaustive
demonstration
of
what
flex
layout
can
do.
A
But
it's
a
good
start
and
you
can
you
can
really
push
it
to
the
limits
and
there's
several
properties.
You'll
need
to
learn
to
master,
but
once
you've
got
them
down,
I
find
it
to
be
extremely
flexible,
all
right
and
then
quickly,
visual
state
manager,
so
with
visual
state
manager,
if
you're
familiar
with
uwp
and
WPF,
this
will
be
very
familiar
to
you.
A
Of
course,
it
allows
you
to
specify
property
changes
that
you
want
to
initiate
based
on
state
changes,
so
you
can
kind
of
bundle,
some
things
up
and
then
initiate
that
state
change
and
update
your
UI.
There
are
some
common
states
that
are
provided
for
you
with
many
of
our
controls,
normal
focused
and
disabled,
and
to
trigger
these
you
call
a
go
to
state
and
that's
fairly,
straightforward.
I
have
a
sample
here.
This
is
the
URL
I
was
spouting
off
earlier
for
the
conference
vision
out,
and
so
this
is
the
camera.
A
So
what
you
see
actually
happening
here
is
that
it
is
changing
the
orientation
as
the
phone
changes
orientation.
It's
redoing
some
of
the
layout,
so
we
want
to
make
sure
that
the
preview
that
little
green
square
there
is
where
it
needs
to
be
and
is
in
the
right
orientation
when
the
phone
changes,
so
that
things
are
good
so
check
out
that
sample
a
lot
of
cool
things
actually
in
that
sample,
I
tried
to
put
a
bunch
of
little
tips
and
tricks
in
there
along
the
way,
all
right.
A
So
that's
the
big
things
how
we
doing
we're
good
only
for
16
all
right,
so
the
little
things.
So,
let's
talk
about
the
little
thing
so
when
I
say
little
things,
I'm
mostly
talking
about
the
f-100,
so
back
around
December
January
time
frame,
I
started
asking
the
community
reaching
out
and
saying
hey.
What
do
you
want
to
be
celebrating
at
the
end
of
next
year?
What
are
you
excited
for?
What's
causing
you
friction
right
now
and
about
that
same
time
one
of
our
community
contributors
posted
a
poll
and
said
hey.
A
What
are
you
having
to
write
over
and
over
again
that
should
just
be
baked
into
xamarin
forms?
Why?
Why
do
you
have
to
do
these
things
and
what
we
came
up
with
through
that,
and
through
also
talking
to
other
developers
and
the
team,
was
this
list
of
F
100s?
This
is
not
the
the
full
list
here.
These
are
the
things
that
we're
delivering
or
will
be
delivering
soon,
so
essentially,
what
these
are
the
little
paper
cuts.
A
These
are
the
things
that
you're
like
and
why
do
I
have
to
go
down
into
native
code
when
all
I
need
to
do
is
set
one
property
or
do
one
little
thing
or
things
that
are
very
common.
That
need
to
be
done
that
are
just
currently
not
very
easy
to
do
in
zaman
forms.
Now
the
great
thing,
obviously
about
xamarin
forms
and
I,
don't
want
to
minimize
this
at
all-
is
that
it's
riding
atop
the
native
platforms,
so
xamarin
iOS
is
xamarin
Android,
it's
it's
all
there.
A
You
have
full
access
to
all
of
the
native
API
is
the
native
UI.
You
can
do
it
all
Zann
reform
just
makes
it
easier
for
you
in
terms
of
creating
you
that
common
UI
layer,
as
well
as
some
of
the
common
api
layers
that
are
there
for
you
to
achieve
more
of
that
cross-platform
productivity,
so
not
to
minimize
that
that's
an
awesome
power
and
that's
what
drew
me
initially
design
reforms
when
I
came
from
NATO
development
is
that
I
could
always
access
those
things
and
I
was
not
restricted
in
any
way.
A
But
you
know
when
you're
doing
the
same
things
over
and
over
again,
let's
go
ahead
and
address
those
things.
So
this
is
here
hit
that
project
board
link.
You
can
see
what
is
what
is
in
progress
what's
being
worked
on,
but
you
know
the
thing
about
the
f-100
that's
been
very
cool
is
that
it's
been
fueled
by
community
contributions,
and
so
I
have
to
take
a
moment
to
say.
A
Thank
you
so
much
to
everybody
who
has
contributed
whether
it
was
just
to
the
conversations
whether
it
was
to
the
review
of
the
of
the
code
or
whether
it
was
to
the
the
actual
PRS.
You
know
a
lot
of
this
would
not
have
been
possible
without
you,
certainly
not
in
the
timeframe
in
which
we've
been
able
to
deliver
it,
and
so
thank
you
so
much.
A
It
has
been
very,
very
cool
to
not
only
see
those
things
come
through,
but
to
participate
with
you
in
that
and
I
look
forward
to
much
more
of
that,
and
in
terms
of
that,
if
you
want
to
join
in
on
that
fun,
these
are
a
couple
of
great
blog
guides.
One
for
you
know
what
we're
looking
for
in
terms
of
contributions
and
another
one
in
terms
of
when
you
pull
down
the
same
reforms
repo.
A
A
I
was
looking
for
when
you,
when
you
look
in
our
release,
notes
you
may
notice
that
multiple
PRS
are
associated
to
certain
features
being
shipped
and,
if
you
click
through
them
and
look
you'll
notice
that
almost
every
PR
that
we
ship
for
an
iOS,
Android
uwp
core
thing
is
matched
by
one
for
Tizen
and
so
a
huge
thank
you
to
the
Samsung
team
for
your
continued
contributions.
You
guys
are
amazing
and
I
love,
I,
love
having
you
guys,
contribute
that
stuff
Tizen.
A
If
you
haven't
checked
it
out
well
worth
checking
out,
we've
got
a
blog
post
coming
up.
That
will
give
you
some
some
updated
details
about
that
all
right,
Android
bottom
tab.
So
what
we'll
do
I'll
look
at
some
of
the
key,
the
highlights
of
those
little
things
and
show
you
how
they
work
and
you
can
get
started
with
them
today.
A
Really
all
you
need
to
do
is
on
that
tab
page.
You
use
another
platform
specific,
so
you
knew
up
the
the
namespace
for
the
xamarin
Android
and
then
you're
gonna
do
Android
tab
page
and
all
the
different
properties
that
you
can
set
there.
So
in
this
particular
case,
if
I
had
just
changed
the
bottom
orientation,
it
wouldn't
have
been
styled
exactly
like
iOS
and
I
wanted
to
get
that
iOS
styling.
So
I
added
some
of
the
bar
item.
Colors
bar
selected
item
colors,
as
well
as
that
bar
background.
A
Color
to
make
sure
it
was
consistent
for
me
across
iOS
and
Android
and
I'll
give
you
a
link
to
to
these
samples
later
as
well
and
they're
all
up
on
my
github,
so
title
view
is
another
one,
and
this
one
is
coming
in
3.2
and
that
you
know
it's
just
not
easy
in
particular
on
iOS
to
customize
stuff.
That's
in
that
title
space
you
want
to
put
an
image
up
there.
A
You
want
to
put
something
interactive
up
there,
something
that's
a
button
or
something
that
you
can
interact
with
and
so
title
view
enables
us
to
do
more
of
that,
and
it's
it's
fairly
easy
to
do.
It's
actually
a
we
have
a
helper
zamel
extension
helper
off
of
the
navigation
page,
so
that
in
your
content,
page,
as
you
can
see
here
in
the
code,
you
can
access
that
title
view
and
then
you
can
put
whatever
content
view
into
it
that
you
need
to.
A
Well,
there
is
a
particular
issue
right
now
and
I'm,
not
sure
if
it's
something
we
we
are
going
to
be
able
to
add,
but
if
you
try
to
do
commands
on
those
gestures
that
wasn't
working
for
me
last
night,
so
I
reported
that,
but
but
tapping
works
great,
so
you
have
more
control
over
that
now
in
terms
of
full
control
of
that
whole
navigation
space.
That's
where
something
like
shell
is
going
to
come
in,
so
we'll
talk
about
that
a
little
bit
later,
bindable
spans.
So
this
was
an
exciting
one.
A
A
You
want
to
be
able
to
bind
into
those
spans,
and
so
now
that's
available,
Thank
You
Adam
for
contributing
that
and
I
think
everybody
will
get
a
lot
of
use
out
of
that
now.
Something
that
goes
along
really
really
well
with
that
is
commanda
below
span
gestures,
so
you
can
add
gestures
onto
the
span
itself.
As
you
see
here
and
commands
work.
Great
and
yeah
I
mean
it's
really
as
simple
as
that
and
it's
super
useful.
A
So
here's
a
quick,
little
animation
or
not
animation,
but
a
recording
of
me
clicking
the
xamarin
comm,
which
now
redirects
to
visual
studio,
Microsoft
comm,
which
I'm
okay
with
it's
okay,
but
we
do
miss
the
xamarin
comm
yeah,
so
use
that
that's
very
cool
button
padding.
You
know
this
is
definitely
in
the
realm
of
the
paper
cut,
because
man,
if
you
just
want
to
make
that
button
a
little
bit
fatter
for
that
particular
call
to
action
or
something
it's
such
a
drag,
to
not
be
able
to
just
to
put
padding
into
it.
A
But
of
course
now
you
can,
and
whereas
previously
you'd
have
to
create
a
custom,
renderer
or
maybe
even
an
effect
which
is
I,
think
James,
Mont
and
I
know
calls
the
effect.
Custom
renderers
light,
which
makes
perfect
sense
so
now,
just
simply
add
the
padding
to
your
button
and
you're
good
to
go
now.
This
is
absolutely
one
of
my
favorites
and
it's
funny
because
I
think
this
one
actually
has
gotten
more
reactions
on
github
than
most
so
essentially
on
platform
and
on
idiom,
Daniel,
Castle
II
know
we
call
them.
A
Kazu
submitted
this
PR,
where
you
can
have
this
sam'l
extension
to
have
a
much
more
concise
on
platform
on
idiom
syntax.
It
supports
default
values
for
its
converters
and
converter
parameters.
So
here,
on
the
background,
color,
you
see
that
I'm
calling
on
platform
and
I'm
just
passing
it.
The
values
I
want
for
the
particular
platforms
and
I
have
a
fallback
of
green.
You
know
if
you've
ever
done
the
sam'l
on
platform
on
idiom.
You
know
it
can
get
a
little
verbose
and
it's
not
necessarily
the
nicest
thing
to
figure
out
and
type.
A
This
is
so
sweet.
This
is
just
you
know,
it's
the
simple
thing.
Sometimes
it's
you
know
the
little
things
that
make
things
really
nice
and
put
a
smile
on
your
face.
So
that's
awesome,
Thank
You
Daniel,
so
this
is
the
URL
to
samples
that
cover
all
of
these
things
and
many
more
so
if
you
want
to
check
that
out
what
this
application
actually
does.
A
I
have
a
3-1
and
a
3-2
tab
and
I
give
samples
of
all
the
major
F
100's
that
we
shipped
in
there,
and
you
can
just
grab
that
code
sample
and
explore
it.
You
know
it's
not
it's
a
basic
app,
but
I
think
it
gets
the
job
done
all
right.
So
we've
actually
got
plenty
of
time
to
talk
about
the
next
things:
whoo,
hey
I'm,
on
the
screen,
all
right.
So
next
things
so
first
of
all,
I
want
to
call
attention
to
xamarin
essentials.
A
Samer
essentials,
we've
heard
from
James
earlier
and
from
Miguel
earlier
as
well.
Is
that
cross-platform
API?
So
you
can
think
of
Sam
reforms
as
your
UI
cross
platform,
whereas
xamarin
essentials
is
your
cross-platform
API.
So
all
these
things
accelerometer
battery
state,
clipboard
connectivity,
everybody's
app,
has
the
connectivity
plug-in
in
it.
Permissions
is
in
here
as
well.
There's
there's
actually
I,
think
more
stuff
that
is
listed
on
this
particular
slide
and
more
is
coming.
A
So
it's
in
preview
now
and
I
believe
we'll
be
going
stable,
very
soon,
I've
been
using
it
I
know
many
many
of
you
have
been
using
it
so
go
for
it
and
the
API
is
nice
and
clean
and
smooth
and
super
easy
to
use
check
it
out
highly
recommend
that
more
CSS
properties.
So
this
is
coming
in
3.2
and
what
comes
next,
and
so
we've
added
just
generally
some
more
properties,
because
what
we
were
hearing
from
customers
and
what
I
started
complaining
about
as
soon
as
I
started
using
CSS
was.
A
This
is
awesome,
but
I
can
only
go
to
here
and
I
need
to
style
this
this
and
this
and
how
do
I
style
that
and
I
don't
want
to
have
to
jump
between
my
CSS
and
my
zamel
styles.
So
we've
started
adding
more
of
those
properties
where
we
can.
What
we
started
with
was
essentially
what
CSS
naturally
supports,
which
I
think
makes
sense,
but
we
wanted
to
start
adding
these.
So
these
these
elements
are
getting
some
new
CSS
properties
available
to
them
and
then
coming
very
soon,
we're
actually
borrowing
from
the
vendor
prefix
idea.
A
So
if
you're,
a
web
developer,
you're
very
familiar
to
the
WebKit
prefix,
the
Moz,
the
IE
prefix,
all
those
sorts
of
things,
so
we're
doing
the
same
thing
here.
So
for
those
properties
that
really
don't
are
not
analogous
at
all
to
what
you
would
get
in
web
development
and
there
are
specific
to
xamarin
forms.
Then
we're
going
to
are,
we
are
decorating
them
with
a
XF
prefix
and
you
can
access
them.
So
a
lot
more
coming.
A
I
think
this
is
a
short
list
and
we'll
be
working
to
ship
more
of
these
things,
ideally
so
that
for
those
who
love
CSS
and
want
to
use
that
as
their
primary
styling
mode,
you
can
you
can
do
all
the
work
there
and
you
don't
need
to
jump
between
CSS
and
the
appearance
class
or
for
iOS,
and
you
know
sam'l
styles
and
all
those
sorts
of
things
all
right
collection
view.
So
we
have
a
spec
up
and
we
did
a
spike
and
the
spike
went
well
enough
that
work.
We're
proceeding
with
this.
A
So
its
list
view,
but
better
list
view
is
perhaps
25%
or
more
of
the
issues
filed
on
github
for
us
and
it's
something
that
we
continually
battle.
But
it's
also
one
of
the
oldest
pieces
of
code
in
the
project.
So
you
know
a
lot
of
skeletons,
maybe
I
think
is
what
some
people
might
say.
So
we
want
we
want
to.
We
want
to
do
this.
Better
I
see
questions
on
the
screen,
so
now
I'm
distracted
but
I
won't
I
won't
do
that.
A
So
it's
it's,
let's
be
a
bit
better
performance
is
definitely
a
key
priority,
but
also
some
of
the
functionality
things
that
customers
that
you
might
have
trouble
with
when
it
comes
to
implementing
things
in
ListView,
swipe
gestures
and
things
like
that,
as
I
mentioned
you
at
the
bottom,
fully
customize
context
menus
on
Android
does
use
the
recycler
view.
That's
a
question:
I
have
frequently
gotten
hey.
When
can
we
start
using
recycler
view?
Can
you
just
replace
list
view
with
a
recycler
view
for
Android?
A
So
that
is
what
collection
view
is
using
on
the
native
side
and
then
one
of
the
really
cool
things
about
the
way
collection
view
works.
Is
that
you
provide
the
layout,
so
it
can
go
horizontal
and
vertical
right.
Now,
there's
really
no
great
way
to
do
horizontal,
so
this
fulfills
that
need
grid
layout.
So
you
can
do
2
up
3
up
4
up,
you
know
whatever
you
need
to
do
from
a
grid
standpoint,
and
then
flex
layout
is
something
that
we've
experimented
with.
The
main
concern
right
now
with
flex
layout
is
in
terms
of
virtualization.
A
If
we
were
to
do
flex
layout
the
way
that
the
measurement
works
and
everything
it's
not
really
very
virtualize
a--
below,
if
you
were
to
use
flex
layout,
you
may
have
to
opt
out
of
that.
We're
not
you
know,
that's
a
conversation,
and
if
you
have
thoughts
on
that
join
the
the
spec
up
on
github
and
say:
hey
heard,
you
guys
are
toying
with
the
idea
of
flex
layout.
Here
are
my
thoughts.
Here's
what
I'd
like
to
see
in
particular
about
the
the
virtualization
topic,
which
kind
of
also
gets
to
the
repeater
view.
A
Question
in
terms
of
I
just
need
something
to
just
paint
a
bunch
of
stuff
on
the
screen,
collection
view
kind
of
meets
that
need
as
well,
but
again
it's
it's.
Maybe
a
here
so
I
invite
those
those
comments
and
conversations
there
so
yeah
context
menus
and
gestures.
So
here's
a
quick
video
I
think
this
may
be
the
same
or
very
similar
to
what
Miguel
showed
earlier
today.
A
So
we've
got
a
grid
layout.
We've
got
each
of
these
as
a
card,
and
it's
painting
those
those
all
out
there.
It
does
respond
to
horizontal
and
vertical.
You
know:
landscape
and
portrait,
so
very
straightforward.
It's
still
very
early.
We've
got
a
lot
of
work
to
do
primarily
working
on
Android
right
now.
If
you
hit
the
roadmap,
actually
I
just
put
up
the
spec
link
and
the
branch
that
is
the
working
branch
right
now
and
you
can
go
check
out
that
work
directly.
A
A
You
will
eventually
be
able
to
do
everything
in
zamel,
of
course,
but
in
this
particular
case
in
the
c-sharp
we
have
the
items
layout,
we're
adding
the
grids
item
layout
to
it
and
then
specifying
how
many
columns,
how
many,
how
many
up
we
want
and
then
the
orientation
specify
the
item
template
data
templates
is
definitely
driving
things
view.
Cells
is
a
problem
problematic.
A
It
adds
another
one
of
those
layers
of
view
to
our
UI
and
we
want
to
make
sure
that
we're
eliminating
as
much
unnecessary
view
inflation
as
possible,
speeding
everything
up
so
so
data
templates
are
key
here
and
then,
of
course,
I'm
binding,
binding
the
items
to
the
items
source.
So
while
this
was
happening
there
there's
a
PR
that
we've
been
working
on
for
a
long
time
and
we
were
like
how
do
we
respond
to
this?
Where
are
we
at
with
this?
A
What
are
we
going
to
do
and,
as
we
were
considering
collection
view
and
what
it
all
does
we
realized
that
collection
view
actually
affords
us
something
else,
which
is
a
carousel
view?
So
if
you
consider
what
a
carousel
view
fundamentally
needs
to
be
able
to
do
its
display
a
list
of
things
and
we
just
needed
to
add
not
just
it
was
work,
don't
get
me
wrong,
I
needed
to
add
that
locking
and
then
adding
pagination
and
being
able
to
step
through
things.
So
here's
a
couple
of
more
functional
examples.
That's
in
our
gallery.
A
A
So
there's
a
there's,
a
whole
history
to
carousel
view
for
us
and-
and
we
have
concerns
about
the
the
one
that
we
initially
put
out
there
as
a
preview,
and
this
is
a
much
better
approach
to
it
and
we've
had
several
community
contributors
work
with
us
on
trying
to
integrate
their
their
carousel
views
into
xamarin
forms
and
I
want
to
take
a
moment
and
say.
Thank
you
so
much
for
doing
that,
because
it
was
a
huge
learning
process
for
us.
A
I
know
that
there's
been
a
lot
of
back
and
forth
and
it
hasn't
been
a
very
smooth
I
mean
carousel
views,
a
huge
amount
of
code.
It's
not
inconsequential,
so
we
feel
like
this
is
the
best
path
forward
for
us
with
carousel
view.
It
maximizes
the
use
of
collection
view
as
well
and
also
kind
of
minimizes
the
the
amount
of
code
that
we
need
to
worry
about.
A
Maintaining
so
yeah,
that's
carousel
view
very
excited
about
it
and,
as
we
have
updates
to
it,
and
these
samples
I'll
make
sure
that
I
publish
those
and
I'll,
let
everybody
know
through
Twitter
and
I'll
post
it
to
my
github
as
well
all
right.
Next
up
so
Zaman
forms
shell,
so
Xen
reforms.
Shell
is
a
very
interesting
thing.
I
believe
the
way
that
Miguel
described
it
earlier
is
when
you
get
Zaman
forms
right
now.
It's
like
you,
have
a
box
of
Legos
with
no
instructions,
whereas
xamarin
forms.
A
By
doing
this,
selfishly
I
have
some
very
key
things
that
I
want
to
see
delivered
in
shell
and
they're
listed
here
on
the
screen,
because
I
know
that
these
things
are
super
important
to
you
in
terms
of
the
applications,
you're
building
and
the
time
that
you're
spending
building
applications
and
and
achieving
the
results
you
want
to
achieve,
and
shell
is
a
perfect
vehicle
for
us
to
be
able
to
deliver
these
things
so,
first
and
foremost,
is
performant
by
default,
so
shell
actually
takes
a
little
step
outside
of
xamarin
forms.
It's
still
part
of
xamarin
forms.
A
You
can
almost
think
of
it.
Jason
our
engineer
described
it
as
a
really
really
fancy
tabbed
page
so,
but
because
we're
able
to
take
a
slight
step
away
from
xamarin
forms,
we
can
step
away
from
the
navigation
which
is
problematic
for
us
in
terms
of
implementing
UI
and
managing
the
stack,
and
when
do
things
get
cached
or
not
cached,
and
things
like
that,
we
can.
We
can
reinvest
in
that,
as
well
as
how
renderers
are
realized
in
terms
of
that
inflation,
whether
or
not
it's
synchronous
or
asynchronous
again.
A
Caching
is
a
big
thing,
so
shell
affords
us
a
lot
of
opportunities
to
optimize
that
performance.
We
have
not
implemented
all
of
them
yet
so
if
you
go
play
with
some
of
the
early
bits
that
are
out
there,
you
won't
see
necessarily
the
performance
at
this
at
this
time,
but
you
will
definitely
see
what
I
believe
is
zero
GPU
overdraw
on
Android,
which
is
awesome.
Something
we've
been
wanting
to
achieve
and
deliver
to
you
for
quite
a
while.
A
So
that
is
definitely
a
key
thing
here
now
another
major
request:
you
know
when
we
survey
customers
and
talk
to
customers
about
what
they're
building
in
their
enterprises
as
well
as
to
commercial
and
consumers.
We
hear
sometimes
upwards
of
90%
of
you
saying:
hey
I
need
to
be
able
to
deliver
the
same
or
mostly
the
same
UI
on
iOS
and
Android.
A
That's
a
key
thing
for
me
to
be
able
to
deliver,
and
sometimes
that's
difficult
to
do
in
terms
of
styling
it
as
you
do
today,
with
custom
renderers
or
effects,
or
you
know
just
the
styling
api's.
So
how
can
we
make
that
better
for
you
and
improve
your
productivity?
That's
another
key
feature
that
we're
able
to
ship
was
an
informal.
So
with
with
this,
you
will
still
have
the
option
absolutely
of
a
platform
design
via
shell.
A
But
if
you
want
to
have
a
consistent
starting
point
from
a
styling,
you
can
choose
the
material
shell
or
perhaps
in
the
future,
a
cupertino
shell
that
that
has
a
starting
point
of
those
particular
design
styles
and
then
from
there
you
can
diverge.
You
can
always
say:
hey,
I,
need
this
control
specifically
to
be
platform
designed
or
I
need
this
particular
control
to
be
material
designed,
but
with
that
that
power
will
be
in
your
hands
and
rather
than
as
it
is
today,
you
have
to
unify
that
design.
A
You'll
be
able
to
start
from
a
more
consistent,
unified
place
and
then
diverge.
Where
you
want
to
diverge,
you
can
easily
describe
your
entire
app
in
one
file,
so
this
is
probably
the
coolest
thing
from
a
Productivity
standpoint
in
terms
of
hey,
you
know
you
get
a
design
from
your
designer
or
you
know.
This
is
certainly
the
case
for
me.
A
I
had
10
years
of
running
my
own
consulting
shop
before
I
joined,
Microsoft
and,
and
we
would
get
designs
from
all
over
the
place,
whether
it
was
a
creative
agency
or
whether
was
an
independent
or
you
know,
or
it
was
somebody's
nephew
and
you
get
that
design
and
you
just
want
to
quickly
say:
okay,
here's
the
skeleton
for
the
app
and
I
know
that
my
navigation
works.
I
know
that
my
pages
are
all
there
and
I
can
start
filling
it
with
content.
A
The
shell
Dom
will
file
or
shell
that's
es
your
choice
in
terms
of
that
gives
you
that
ability
to
specify
those
things
in
terms
of
layers
of
shell
items,
shelf
sections
and
shell
content
and
then
customizing
the
content
within
the
flyout
menu,
and
things
like
that,
which
I'll
show
some
examples
of
here.
In
just
a
few
minutes.
A
You
get
flyout
and
tab
navigation
provided
for
you.
You
get
URL
routed
navigation
with
deep
linking
which
is
very
desirable,
and
then
the
back
navigation
handling
is
just
what
it's
almost
one
of
those
paper
cuts
where
it's
like
man
I
need
to
able
to
stop
the
user
when
they
hit
that
back
button,
so
that
I
can
intercept
it
and
say:
hey.
Are
you
sure
you
want
to
leave
this
screen?
This
is
going
to
be
much
easier
to
do
in
in
shell.
Whoops
I.
Don't
want
to
go
forward.
A
Go
back,
I
got
too
eager
all
right
back
navigation
handling,
integrated
search
Handler.
So
this
is
where
you
have
that
search
bar.
That
appears
you
know
at
or
just
below,
in
your
navigation
bar
and
then
can
kind
of
animate
in
and
out
of
there
and
I
think
that
video
on
the
left-hand
side
here,
if
I
fire
it
back
up,
was
doing
that
on
one
of
the
screens.
So
that's
provided
for
you.
You
really
just
decorate
your
content,
page
with
a
search
handler.
A
You
override
a
method
for
filtering
your
data
and
you're
good
to
go
all
the
UI
is
really
handled
for
you.
You
just
need
to
style
it.
A
snack
bar
bottom
sheet,
floating
action
button.
These
are
more
material,
design
things
and
you
will
get
in
the
material
shell
and
they
will
work
both
on
Android
and
iOS.
That's
a
key
key
piece
that
we're
delivering
there
again.
A
Of
course,
once
you
do
master
the
whole
space
you
own
it
so
in
terms
of
navigation
of
back
buttons
and
and
any
of
the
other
OS
related
UI
that
gets
put
there
you
and
our
responsible
for
that
screen.
Segues
and
screen
transitions
so
screen.
Segues
is
essentially
declaratively,
saying
when
this
happens
go
to
this
page
right
and
very
similar
to
iOS.
A
Now,
if
you're,
if
you're
doing
interface
builder
and
things
like
that,
where
you're
you're
creating
your
segues
there,
so
you
can
do
this
in
sam'l,
you
can
do
it
in
c-sharp
and
you
can
build
your
routes
off
based
off
that
and
then
screen
transitions.
This
is
something
that
I'm
very
excited.
To
be
able
to
start.
Shipping
is
the
ability
for
you
to
specify.
A
Okay,
when
you
do
execute
this
segue
I
want
you
to
curl
or
I,
want
you
to
go
left
to
right
or
right
to
left
or
top
to
bottom
crossfade,
those
sorts
of
things
so
being
able
to
provide
you
with
more
transitions
to
customize
that
which
today
is
more
and
more
difficult
to
do,
and
then
the
key
thing
as
I
mentioned.
This
is
really
part
of
Zam
reforms.
This
isn't
a
new
xamarin
forms.
A
This
is
just
a
new
control
and
a
new
paradigm
with
which
to
build
your
applications,
and
we
believe
it
will
be
the
default
in
the
coming
days
or
not
days.
I
can't
ship
it
that
fast
it'll,
be
it
when
it
when
it
ships
it'll
be
the
default,
is
our
expectation,
but
you
can
do
everything
today
that
you
can
do
in
xamarin
forms
when
you
have
a
show
application.
So
let's
take
a
look
at
a
sam'l
sample
here.
A
Well,
I
got
some
code,
I've
got
a
couple
of
images
and,
and
then
I
think
we're
about
done
so
in
shell.
This
is
my
top-level
part
of
the
application.
You
have
your
resources,
where
you
can
specify
your
styling
any
of
your
other
dependencies
that
you
need
to
specify
in
your
resource
dictionaries,
and
then
you
start
specifying
shell
items,
shell
sections
and
shell
content.
Shell
content
is
a
Content
page,
and
you
can
see
here
in
this
particular
example
I'm
using
data
templates,
and
that
is
the
preferred
way
to
do
this.
A
That
makes
sure
that
you're
not
eagerly
loading
those
things
and
having
that
big
bump
in
performance
at
the
very
beginning
of
your
application
and
those
things
get
loaded
when
they
need
to
be
loaded.
I
mentioned
caching
API
as
earlier,
and
that's
something
that
we're
working
on
and
investigating
the
best
way
to
implement,
but
you'll
have
control
of
saying.
Ok,
I
want
this
particular
page
to
be
retained
or
I,
don't
care.
A
You
can
recreate
this
page
over
and
over
again
those
sorts
of
things
and
so
she'll
I
Tamar
the
menu
items
that
appear
in
your
flyout
menu
and
then
within
there
you
specify
shell
sections.
So
in
this
particular
case,
I
have
one
left
menu
item
which,
if
I
had
a
flyout,
is
just
one
menu
item.
But
I
can
also
disable
that
flyout.
If
I
don't
want
the
hamburger
menu,
totally
fine
disable
the
flyout,
it's
not
there
and
then
shelf
sections
end
up
representing
bottom
tabs
of
your
UI.
So
these
are
the
main
sections
of
your
UI.
A
When
a
shell
section
has
one
content
page
in
it.
That's
what
you're
going
to
see,
just
as
if
you
had
a
tab
page
today,
but
if
you
have
a
shell
section
like
the
activity
section
here
in
the
middle,
then
that
has
two
shell
content,
those
get
represented
as
top
tabs.
So
at
that
point,
I
now
have
three
bottom
tabs
for
home,
one
for
activity,
one
for
updates
and
then
at
the
top
on
activity.
I
have
shared
in
notifications.
So
this
is
very
powerful
in
that.
A
You
know
I'm
just
showing
a
very
brief
snippet
here,
but
you
can.
You
can
compose
and
combine
these
things
in
different
hierarchies,
or
the
hierarchy
is
always
the
same,
but
in
different
ways
to
achieve
the
UI
that
you
need
to
achieve
very
easily
and
it
will
still
obey
the
native
paradigm
right
for
that
particular
UI.
So
if
you
go
to
youtube
EP
where
tabs
or
handles
slightly
differently,
then
iOS
and
Android,
you
will
be
able
to
expect
when,
when
you
do
something
on
you
VP
that
you
would
get
that
result
all
right.
A
So
here
are
a
couple
of
screen
samples
of
the
different
UIs.
So
you
got
a
single
page.
You've
got
a
bottom
tab,
top
tab,
etc.
So
we
can
look
at
some
zamel
samples
for
these,
so
that
that
single
page,
very
simple
I,
don't
even
need
a
date,
a
template
for
it,
because
I
just
you
know,
go
ahead
and
do
that
guy
up
I,
don't
need
to
lazy
load
that
that
doesn't
make
any
sense
and
because
I
just
have
one
page,
I
don't
need
to
fly
out.
A
I
can
disable
that,
like
I
said
so
at
the
shell
level,
I'm
disabling,
it
I'm,
obviously
omitting
a
bunch
of
the
namespaces
and
that
sort
of
thing
something
you'll
also
note-
is
that
I
have
a
shell
content
here
and
I'm,
not
representing
the
shell
item
and
the
shell
section
that
are
actually
there.
So
we
want
to
make
sure
that
your
zamel
doesn't
get
more
of
a
boast
than
it
needs
to
be,
and
so
we
have
some
little
syntax
here
that
you
can.
You
can
omit
them
and
they
will
be
inferred
and
be
created
for
you.
A
Well
go
back.
I
want
to
go
back
to
some
of
the
other
samples,
alright,
so
bottom
tabs.
So
if
we
want
to
look
at
what
that
looks
like,
as
I
mentioned,
you
can
have
a
shell
section
with
two
shell
content
in
it.
You
say:
well,
Dave,
you
just
said
shell
section
all
I
see
is
a
shell
item
well
like
I
just
mentioned
before.
If
I
don't
specify,
that
element
is
created
for
me.
So
what
you
actually
have
here
is
shell
item
at
the
outer
level
and
then
a
shell
section
with
two
shell
content.
A
Now,
because
I
just
have
one
bottom
tab,
it's
not
going
to
be
shown
by
default.
You
do
have
full
control
to
show
and
hide
the
bottom
tab
bar,
which
is
cool,
but
by
default.
If
you
just
have
one
bottom
tab,
there's
no
need
to
have
it.
It's
going
to
be
hidden
for
you.
So
in
this
particular
case,
I
actually
have
two
shell
content.
I
have
to
show
sections
at
the
bottom
I
did
it
again,
who
taught
me
how
to
use
PowerPoint
all
right
top
tabs
come
to
me
all
right.
A
So
in
this
particular
case,
I
need
to
actually
tell
shell
that
I
want
them
to
be
top
tabs,
and
so
therefore
I
need
to
wrap
them.
The
two
shell
content
in
a
shell
section
and
that
very
easily
tells
shell
what
to
do
if
I
want
both
bottom
and
top
tabs.
Then,
within
my
shell
item,
I
specify
that
first
shell
content
and
then
the
second
shell
content.
A
If
you
have
thoughts
about
this,
this
is
still
very
much
in
development
feedback
for
us,
please
let
us
know
over
the
past
two
weeks,
I
think
I've
had
at
least
15
one-on-one,
developer,
interviews
and
I
will
be
scheduling
more
if
you're
interested
in
talking
to
me
about
this
particular
feature
and
how
we're
putting
it
together
and
how
it
works.
I
would
love
to
talk
to
you
about
that.
So
hit
me
up.
I'll
show
you
my
contact
information
at
the
end,
all
right.
A
So
now,
let's
move
on,
so
that's
that
shell
and
I
guess
I
should
just
mention,
because
the
questions
will
come
in
terms
of
shell.
When
are
we
gonna
see
it?
How
can
we
use
it,
etc?
So,
up
on
my
github
there's
a
repository
called
gastropods
I
neglected
to
actually
include
the
link
in
the
in
the
presentation.
I
apologize,
but
you
can
check
that
out.
It
has
a
very
early
nougat
package
bundled
into
it,
and
it's
really
for
exploring
the
API
again.
A
A
lot
of
the
features
and
functionality
are
there,
but
plenty
of
things
are
not
so
you
can
explore
the
API.
You
can
use
this
sam'l
syntax
and
see
what
it
feels
like
to
structure
your
application
and
and
give
us
some
feedback
based
on
that.
Alright.
So,
lastly,
and
then
I'll
take
some
questions
gestures.
A
So
this
is,
you
know
when
we
go,
we
go
down
the
list
of
when
I
talk
to
developers
and
customers
about
what
what
are
their
major
friction
points,
and
we
want
to
be
able
to
deliver
the
most
value
right
for
the
effort
that
we
we
invest
in
them,
something
that
comes
up
very
frequently
and
we
already
hit
on
the
ones
that
are
at
the
top
of
the
list
that
we're
already
working
on
now
is
gestures
because,
right
now
you
get
basically
three
gestures
in
xamarin
forums.
What
do
you
do
for
the
rest
of
them?
A
There
are
some
third-party
libraries
out
there,
but,
as
you
know,
the
more
third-party
nougats
and
libraries
that
you
add
your
application,
that's
more
code
that
you
don't
really
know
about
that
you're
using
but,
more
importantly,
in
terms
of
build
times
and
and
runtime
performance,
there
are
potential
impacts
there
that
you
need
to
be
aware
of
and
be
cognizant
of
so
xamarin.
Essentials
is
something
that
one
of
the
main
reasons
that
we
did.
A
That
was
so
that
we
could
bundle
a
bunch
of
those
nougat
packages
together
that
we're
very
useful,
but
when
you
put
them
all
together,
that's
a
lot
of
assemblies
that
are
in
your
in
your
project
in
your
build
system.
So
we
want
to
be
able
to
minimize
the
number
of
nougats
that
you
have.
So
the
essentials
is
a
big
thing
towards
that
and
I
think
that
improving
our
gesture
support
within
xamarin
forums
is
another
thing
that
we
want
to
be
able
to
do
to
both
address
that,
but
also
just
make
things
easier.
A
We
hear
from
customers
all
the
time.
Hey
I
just
want
to
be
able
to
do
things
in
xamarin
forums.
I
don't
want
to
have
to
go
to
native
again,
you
can
absolutely
go
to
native
and
that's
fantastic
and
we'll
never
take
that
away.
That's
that's
key
to
what
what
salmon
form
is
delivers
then,
when
tamarind
delivers,
so
we
have
specs
up
on
github
and
we
need
your
input.
We
need
you
to
go
up
there
and
register
a
reaction.
Tell
us
yes!
I
want
to
see
this
or
if
you
don't
list
it
and
you're
like
I.
A
Don't
think
you
guys
should
be
investing
time
on
that,
then
you
know
don't
vote
or
let
us
know
that
it's
not
a
big
friction
point
for
you,
but,
but
if
it
is,
we
need
that
feedback
again.
I
feel
like
I've,
got
a
pretty
good
signal
talking
to
many
developers
and
customers
that
this
would
be
a
very
welcome
thing,
but
we're
not
committed
to
doing
these
particular
things.
A
Yet
we
want
to
have
that
conversation
with
you
and
to
know
to
know
that
this
is
something
that
would
really
be
a
value
to
you
or,
if
you're,
more
than
comfortable,
using
what's
already
out
there,
but
some
of
the
things
that
are
on
your
long
press.
Pan
pinch
rotate
tap
is
tapping.
Some
of
these
are
enhancements
to
existing
gestures,
and
some
of
them
are
additional
gestures
and
there
are
more
up
on
that
github.
So
look
at
the
gestures
label.
So
with
that
I'll
start
answering
some
questions.
A
My
contact
information
is
on
the
slide,
feel
free
to
email
me
any
time
to
share
what
you're
doing
what
your
projects
are.
I,
love
project
I
just
saw
some
AR
stuff
recently.
That
was
amazing
and
I'm
really
excited
to
talk
to
that.
To
that
company
I'm
always
excited
to
talk
to
all
of
you.
So
let
me
know
what
you're
doing
what
you're
frustrated
with
what
I
can
do
to
make
things
better
for
you
follow
me
on
Twitter
David
work.
Now
all
right.
Let's
look
at
some
of
the
questions
we've
got.
A
We
got
what
10
minutes
yeah
and
no
one
nine,
oh
nine.
Oh
eight,
all
right
Jeremy
asks.
Is
there
any
more
work
being
done
to
speed
up
xamarin
Android
startup
time
or
as
it
as
fast
as
we
can
get
so
I
think
I've
kind
of
hit
on
that,
hopefully,
throughout
that
it
is
absolutely
a
priority
for
us
and
is
something
that
we're
working
on
deep
investigation
is
happening.
As
a
matter
of
fact,
the
Android
support
library
is
2702
dot.
One
has
some
performance
improvements
in
there
specifically
for
Android.
A
Äôt
is
something
that
we're
continuing
to
invest,
investigate
the
impact
in
and
want
to
make
sure
that
that
is
both
useful
and
reasonable,
because
there
are
trade-offs
with
it,
but
that
is
your
biggest
bang
for
the
buck
right
now
in
terms
of
startup
time,
but
yeah
lots
of
deep
investigation
going
on
both
at
the
Android
SDK
level
and
the
same
reforms
level
is
text-to-speech
support
for
speech
to
text.
Well,
so
I'll
answer
that
by
saying
that,
yes,
anything
that
you
can
do
in
the
native
API
is
you
can
absolutely
do
in
zaman
forms.
A
So
that
is
not
particularly
a
feature
of
zero
in
forms
itself,
but
you
can
absolutely
get
to
it
in
a
xamarin
forms
application.
What's
the
roadmap
for
releases,
you
mention
is
3.
What's
the
target
release
date,
my
target
release
date
was
like
several
weeks
ago
to
be
quite
honest
and
but
you
know
we're
not
gonna
ship,
something
until
it's
ready,
and
so
we
identified
some
blocking
issues
which
you
know
kudos
to
the
to
the
team
for
for
investigating
those
issues,
and
you
know
identifying
them
and
so
we'll
release
it
as
soon
as
it's
ready.
A
My
best
guess
I
don't
mind
guessing,
but
you
know
in
the
next
couple
days:
if
not
the
next
week
are
there
links
to
anything
that
was
talked
about
today.
Absolutely
so
I
posted
links
throughout
the
slides,
I
know,
I
went
really
fast
and
blew
through
a
lot
of
them.
If
you
hit
my
github,
which
is
github
comm
David
work
now
you'll
find
most
of
these
samples.
There
I
mentioned
the
Microsoft
conference
vision
sample
and
then
you
know,
hit
hit
hit
our
repository
and
check
out
the
the
gallery
there
as
well,
and
our
documentation.
A
I
can't
forget
the
documentation.
We've
got
great
documentation
on
a
lot
of
this
stuff.
Obviously,
the
new
stuff
we
don't
have
Docs
for
but
check
out
the
documentation
it
links
to
all
the
samples
that
are
out
there.
We
have
quite
a
few
samples
for
the
recent
3.1
and
the
3.2
stuff,
either
either
already
published
or
ready
to
go,
examine
form.
Shell
is
like
an
embedded,
a
turf
or
exam
and
projects.
Is
it
like
I?
Don't
know
that
I
would
describe
it
that
way.
A
So
yeah
shell
is
more
of
just
a
way
of
rethinking
how
you
structure
your
zamel
forms
applications
and
making
it
a
whole
lot
easier,
providing
you've
guides
for
things
and
in
terms
of
extensibility
and
flexibility.
That's
one
thing:
I
didn't
really
mention,
but
extensibility
is
very
important.
It's
something
that
I
want
to
see
more
of
and
when
I
hear
anybody
complain,
I
can't
override
this
or
I
can't
get
to
that.
You
know.
That's
like
oh
man,
you
know
what
can
we
do
about
that?
A
Can
we
extend
that
like
now,
you
can
actually
load
zamel
from
anywhere
that
method
used
to
be
internal.
Only
and
now
that's
public,
and
so
people
are
taking
advantage
of
that,
whether
you're
loading
it
from
a
database
or
from
elsewhere.
Now
you
you,
you
own
that,
once
you
start
doing
that,
you
pay
the
price
for
it,
but
anything
we
can
do
to
make
things
more
extensible.
So,
while
xamarin
forms
shell
is
a
opinionated.
Here's
how
you
build
your
app.
A
You
still
have,
and
more
so
now
in
shell
access
to
extend
those
things
so,
for
example,
that
flyout
menu
by
default.
You
can
customize
the
header
space,
you
can
style
those
menu
items,
but
you
can't
drop
things
at
the
bottom
and
anchor
things
to
the
bottom
of
the
flyout
menu
by
default.
That's
the
way
that
that
flyout
menu
works.
If
you
want
to
replace
that
flyout
menu
with
your
own
menu,
we
make
that
extensible
for
you
same
thing
with
the
menu
items
as
well.
A
It's
icon
text
and
you
know
a
little
bit
of
styling
if
you
want
to
fully
customize
that
you
provide
a
data
template
for
it
and
you're
good
to
go.
So
that's
more
of
how
I'm
describing
shell
embed
inator
for
for
jamaran
apps,
not
not
so
much
any
other
questions.
Anything
else,
all
right,
I
think
we're
good.
So,
thanks
for
watching,
please
hit
me
up
with
the
email.
The
Twitter
and
I'll
see
you
around.