学习
实践
活动
专区
工具
TVP
写文章

张高兴的 Xamarin.Forms 开发笔记:为 Android 与 iOS 引入 UWP 风格的汉堡菜单 ( MasterDetailPage )

所谓 UWP 样式的汉堡菜单,我曾在“张高兴的 UWP 开发笔记:汉堡菜单进阶”里说过,也就是使用 Segoe MDL2 Assets 字体作为左侧 Icon,并且左侧使用填充颜色的矩形用来表示 ListView 三、共享代码项目 HamburgerMenuDemo    首先添加几个页面,根目录下添加一个 MasterPage.xaml 页面,用于”大纲视图“。 添加一个 Views 文件夹,用于存放子页面,其中添加3个界面:Page1、Page2、Page3。添加一个 MasterPageItem.cs 类。 1.  ListView 的 ItemTemplate 与 UWP 稍有不同,左侧的填充矩形换成了 BoxView,二级菜单的上边线由 Border 换成了高度为1的 BoxView。 两个 ListView 需要通过属性的方式, MainPage 传递控件。字体路径各个项目不同,需要单独设置,我后面会说。

808100
  • 广告
    关闭

    热门业务场景教学

    个人网站、项目部署、开发环境、游戏服务器、图床、渲染训练等免费搭建教程,多款云服务器20元起。

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    安卓基础干货(三):安卓数据库的学习

    但有一种情况例外:定义为INTEGER PRIMARY KEY的字段只能存储64位整数, 当这种字段保存除整数以外的数据时,将会产生错误。 listview显示数据列表的步骤: 1、在布局文件中添加一个listview控件 2、在代码中找到这个listview控件 3、创建一个数据适配器为listview填充数据 ArrayAdapter 使用ArrayAdapter为listview填充数据的步骤: 1、在布局文件中添加ListView 2、在代码中初始化这个listview控件 3、调用listview.setAdapter()填充数据 填充数据的步骤: 1、在布局文件中添加ListView 2、在代码中初始化这个listview控件 3、调用listview.setAdapter()填充数据 //使用适配器为listview填充数据 界面的显示(重点) 步骤: 1、在布局文件中添加ListView 2、在代码中初始化这个listview控件 lv = (ListView) findViewById(R.id.lv); 3、自定义数据适配器

    43420

    Android ListView功能扩展,实现高性能的瀑布流布局

    虽说功能是可以正常实现,但是这种实现原理背后的问题太多了,因为它只会不停ScrollView中添加子View,而没有一种合理的回收机制,当子View无限多的时候,整个瀑布流布局的效率就会严重受影响,甚至有可能会出现 接下来让我们回忆一下,ListView最基本的填充方式分为向下填充和向上填充两种,分别对应的方法是fillDown()和fillUp()方法,而这两个方法的触发点都是在fillGap()方法当中的,fillGap 接下来看一下fillDown方法,原先的逻辑是在while循环中不断地填充子View,当新添加的子View的下边缘超出ListView底部的时候就跳出循环,现在我们进行如下修改: private View 接下来在第48行判断needToMeasure,如果是普通情况下的填充或者ListView滚动,needToMeasure都是为true的,但如果是点击ListView触发onItemClick事件这种场景 mColumnViews中所属列的末尾,如果是向上滑动,则该View添加到mColumnViews中所属列的顶部。

    81760

    【工具】清理Windows Installer冗余文件(支持64位NT6.x系统)

    另外有用户表示还存在不能【全选/不选】的体验问题,这个倒其实好解决,得益于ListView控件(WIC应该不是.net程序,作者使用的编程框架下该控件可能不叫ListView,但我肯定它跟.net下的ListView 都是调用同样的原生win32控件,spy++下显示为SysListView32)的能力,可以通过全选所有行+空格(或鼠标勾选)来达到全选/不选的目的,熟悉win系统的老鸟用户大概都知道类似的一些操作技巧 另外要感谢: 来自codeproject.com牛人的方案,它解决了ListView排序带原生标记(三角标记)的问题。排序容易,弄个自定义标记也不难,难的是系统原生标记 各图标原作者。 在此猿友推荐一套高质量图标,作者似乎是个JP,程序UI的设计师,作品真的很优质 工具地址: http://pan.baidu.com/s/1i39w8Qh 望得到用户反馈,非常感谢! -文毕-

    76220

    使用SimpleAdapter

    通过ArrayAdapter实现Adapter虽然简单、易用,但ArrayAdapter的功能比较有限,它的每个列表项只能给一个TextView动态填充内容。 to:该参数是一个int[]类型的参数,该参数决定填充哪些组件。 二、示例 接下来通过一个示例程序来学习如何使用SimpleAdapter创建ListView。 继续使用WidgetSample工程的listviewsample模块,在app/main/res/layout/目录下创建simpleadapter_layout.xml文件,在其中填充如下代码片段: 同ArrayAdapter创建ListView一样,如果需要监听用户单击、选中某个列表项的事件,则可以通过AdapterView的setOnltemClickListener()方法为单击事件添加监听器 ,或者通过 setOnItemSelectedListener()方法为列表项的选中事件添加监听器。

    395100

    React Native年度报告(2017-2018)

    FlatList、SectionList等具有更高性能的列表组件,也有与时俱进的用于适配全屏幕的SafeAreaView组件,同时呢,一些性能较差、无法适应React Native未来发展的一些老的组件,如:ListView 本文将大家总结React Native在过去的一年中的重要变更,以及新组件,新API的适配建议。 MaskedViewIOS 0.48 可以为组件添加一个透明的遮罩; SafeAreaView 0.50 用于包裹其他View,它会自动应用填充布局中不足的一部分,但不包括navigation bars 过时、移除说明 组件 最低支持版本 说明 BackAndroid 0.44 使用功能更丰富的BackHandler代替; Navigator 0.43 使用react-navigation代替; ListView react-native-maps代替此地图组件; RecyclerViewBackedScrollView 0.42 这个组件是很久之前为了解决 scroll-back-when-data-is-added 这个bug而添加

    54560

    flutter系列之:把box布局用出花来

    考虑在一个可滚动列表的情况下,比如ListView,因为他是unbounded的,如果ListView的子widget是Container的话,Container会尽可能的小,这很明显不是我们所想要的, 中,我们添加了一个Container,这些Container中只设置了color,并且并未设置任何大小,那么将会得到下面的界面: 可以看到现在看到的界面是空白的。 FittedBox FittedBox就是填充box的意思,可以按照指定的fit规则来填充它的child。 child, }) FittedBox有几个非常有意思的参数,首先是fit,表示如何填充Box,它是一个BoxFit对象,BoxFit有几个值,用来描述fix的方式。 比如fill表示填充到box中,不管之前child的长宽比,而contain表示的是尽可能的包含child。

    8820

    android的适配器作用,适配器在Android中的作用是什么?

    11个解决方案 39 votes Android中的适配器基本上是UI组件和将数据填充到UI组件的数据源之间的桥梁 例如,通过使用数据源数组中的列表适配器来填充列表(UI组件)。 您可以使用Android适配器填充ListView。 Adapter是一个接口,其实现提供数据并控制该数据的显示。TextView自己的适配器完全控制ListView的显示。 TextView接口包括将数据传送到ListView的各种方法。您可以通过实现BaseAdapter从头开始创建自己的适配器。 它是数据源和布局之间的接口(很可能是ListView)。 一个类比 我们举一个移动充电器的例子,或者更确切地说是USB电缆。 SimpleCursorAdapter定义列表的各行的布局通过setAdapter()方法CursorAdapter提供数据ListView

    26640

    揭开RecyclerView庐山真面目

    回收或重用一个View的时候,LayoutManager会适配器请求新的数据来替换旧的数据,这种机制避免了创建过多的View和频繁的调用findViewById方法。 除了上面两个主要元素,通常还会使用到如下三个类: ViewHolder:维持了所有被数据填充的实体的视图的引用。 ItemDecoration:一个实体的周围的装饰。 继续使用WidgetSample工程的advancedviewsample模块,首先需要添加支持库,这里通过图形化的操作来实现,后期再学习直接代码添加。 可以看到在Dependencies页面的列表里面已经成功添加了recyclerview依赖库,点击OK按钮最终确认。 ? 在app/main/res/layout/目录下创建recyclerview_layout.xml文件,在其中填充如下代码片段: <?

    65880

    扫码关注腾讯云开发者

    领取腾讯云代金券