zoukankan      html  css  js  c++  java
  • Xamarin.Forms之AppCompat

      由于Xamarin.Forms中是对官方控件的封装,其实开发过Xamarin.Android的都会知道基础与AppCompat的外观界面是相差很大的,使用方式上也有很多不同,而Forms内部的封装不会对每个都有具体的说明,特别是那些Android平台上面没有的控件,这里需要仔细的记录一下:

    1.Frame

         Frame在非AppCompat中,官方的渲染方式是通用Canvas画出一个圆角的矩形,对,就是这个简单,但是你升级AppCompat后发现,我艹,边框咋没有了,更别谈边框颜色了

    盗图了:

    new Frame {Padding = new Thickness(10), Content = iIconImage, HasShadow = false, BackgroundColor = Color.Transparent, OutlineColor = Color.Transparent};

    可以看到,即时将Frame的HasShaow=false,也会有阴影的

    原因在于:

    Yes in AppCompat frame is mapped to the Card control on Android. This is a bit of a breaking change when porting and you must be aware of it.

    没错,AppCompat官方的使用了CardView来替代前面的方式

    public class FrameRenderer : CardView, IVisualElementRenderer, IRegisterable, IDisposable

    2.ActionBar

    FormsAppCompatActivity里面已经封装了Toolbar,android里面使用v7包是可以继续使用ActionBar,但是Forms封装的必须使用'Theme.AppCompat.Light.NoActionBar',必须设置NoActionBar,否则会报错

    3.Page的生命周期

    这是很奇怪的问题,在原生界面,如果调用相机拍照  调用图库返回是不会触发OnViewAppearing的,但是在V7中会是Page触发该事件

  • 相关阅读:
    [IOI1994][USACO1.5]数字三角形 Number Triangles
    和为给定数
    小凯的疑惑
    棋盘
    【2020NOI.AC省选模拟#2】C. 送分题
    【NOI OL #2】涂色游戏
    【NOI OL #3】小结
    【NOI OL #1】最小环
    【NOI OL #1】冒泡排序
    【NOI OL #1】序列
  • 原文地址:https://www.cnblogs.com/yz1311/p/5438841.html
Copyright © 2011-2022 走看看