Android开发中Flutter组件实用技巧
目录
- 正文
- 简化 Assert 管理
- 更容易 imports
- 从按钮上移除飞溅效果
- 更简单的平台小工具
- 可见性小工具
正文
今天我将向您展示 4 个非常有用的 Flutter 技巧,您可以立即应用到您的项目。我不会向您展示任何包或扩展,就像我通常做的那样,但是非常简单,但是非常有用的提示!
简化 Assert 管理
管理 Assert 可能非常困难。如果你想在你的应用程序中多次使用一个图像,你必须一次又一次地指定路径。但是有一个简单得多的解决方案。创建一个 App Assets 类,用于存储所有的 App Assert。现在您可以轻松地使用 AppAssets.appLogo
或 AppAssets.noConnection
调用 Assert。
更容易 imports
在一个文件的开头看到和管理成千上万的导入真的很烦人。这就是为什么我要向你们展示一种轻松减少进口的方法。
假设你有一个文件夹叫做 Constants, 里面的文件包括 app_colors.dart
, app_fonts.dart
, app_theme.dart
, app_constants
and app_assets.dart
are.
在这个文件夹中,您现在创建一个名为 constant.dart 的新文件。
在这里,您为每个文件编写一个导出语句。现在你可以通过简单的导入 constant.dart 来访问你的每个文件:
从按钮上移除飞溅效果
当你点击一个按钮时,每个人都知道这种飞溅效果,我一点也不喜欢。
所以我将向你们展示如何用一条线消除这种效果。
为此你必须使用 splashFactory
:
现在你的按钮在按下的时候看起来像这样:
(我一直在点击按钮)
更简单的平台小工具
每个 Flutter 开发人员可能都知道当你查询用户是 iOS 还是 Android 时的情况。因此,您然后显示一个特定的 wdiget,例如 Switch 或 CupertinoSwitch。但是如果我告诉你,你不需要一个查询,也不需要两个小工具呢?怎么做到的?这就是我现在要展示给你们的:
许多可用于安卓和 iOS 的小工具都有一个。安卓版本的自适应扩展。例如,让我们用。适应的:
好的,这已经很好了,但是最好的还在后面: 这也可以用于图标。要做到这一点,你只需要使用 Icons.adaptive.share
在 Android 和 iOS 上显示一个共享图标。
我不知道这些小工具具体适用于哪些部件,但无论如何,Slider
、 SwitchListTile
和 CircularProgressIndicator
都可以使用这个特性。
可见性小工具
使用 bool 来查询一个小部件是否应该可见通常是这样的:
但是还有一个名为可见性的小工具可以做到这一点:
这样看起来好多了,对吧?
以上就是Android开发中Flutter组件实用技巧的详细内容,更多关于Android开发Flutter组件的资料请关注我们其它相关文章!
相关推荐
-
Android开发组件flutter的20个常用技巧示例总结
目录 1.map遍历快速实现边距,文字自适应改变大小 2.使用SafeArea 添加边距 3.布局思路 4.获取当前屏幕的大小 5.文本溢出显示省略号 6.一个圆角带搜索icon的搜索框案例 7.修改按钮的背景色 8.tab切换实例 9.点击事件组件点击空白区域不触发点击 10.使用主题色 11.往安卓模拟器中传图片 12.控制text的最大行数显示影藏文字 13.去掉默认的抽屉图标 14.图片占满屏 15.倒计时 16.固定底部 17.添加阴影 18.隐藏键盘 19.获取父级组件大小 20.点
-
Android原生项目集成Flutter解决方案
了解一下如何在 Android 原生项目中集成 Flutter 生成配置 在原生项目根目录执行命令 flutter create -t module --org {package_name} {module_name} // 此处 module_name 的命令遵循 Android 子 module 的命名即可.不能有中划线. // 比如, flutter create -t module --org com.engineer.mini.flutter flutter_sub // 此处 mod
-
Flutter调用Android和iOS原生代码的方法示例
前言 本文主要给大家介绍了关于Flutter调用Android和iOS原生代码的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 分3个大步骤: 1.在flutter中调用原生方法 2.在Android中实现被调用的方法 3.在iOS中实现被调用的方法 在flutter中调用原生方法 场景,这里你希望调用原生方法告诉你一个bool值,这个值的意义你可以随意定,这里表示的意义是是否是中国用户. 你可以在flutter中设计好要调用的方法名称,这里就叫 isChinese 请
-
Flutter 和 Android 互相传递数据的实现
(一)Android代码设置 1,打开Android Studio 创建一个应用程序,包名dev.android.book 2, 创建一个MyApplication ,应用在AndroidManifest.xml文件中的application的android:name属性上 3,创建FlutterEngine的实例,然后把这个实例添加到缓存的FlutterEngine当中 4,创建MethodChannel的实例,指定一个此实例的唯一字符串,例如dev.android.book/add 5, 设
-
Flutter Android端启动白屏问题的解决
问题描述 Flutter 应用在 Android 端上启动时会有一段很明显的白屏现象,白屏的时长由设备的性能决定,设备性能越差,白屏时间越长. 问题分析 其实启动白屏的问题在Android原生应用上也是一个常见问题,大致是因为从用户点击 Launcher Icon 到应用首页显示之间,Android 系统在完成应用的初始化工作,其流程如下: 在 Flutter Android 端上,白屏的问题会更加严重,因为除了 Android 应用启动耗时外,还增加了 Flutter 初始化耗时. 直到 Fl
-
Android如何在原生App中嵌入Flutter
本文参考文档Add Flutter to existing apps. 首先有一个可以运行的原生项目 第一步:新建Flutter module Terminal进入到项目根目录,执行flutter create -t module 'module名字'例如:flutter create -t module flutter-native 执行完毕,就会发现项目目录下生成了一个module 第二步:同步Flutter module依赖 进入到新生成的Flutter module目录下的.androi
-
Android开发中Flutter组件实用技巧
目录 正文 简化 Assert 管理 更容易 imports 从按钮上移除飞溅效果 更简单的平台小工具 可见性小工具 正文 今天我将向您展示 4 个非常有用的 Flutter 技巧,您可以立即应用到您的项目.我不会向您展示任何包或扩展,就像我通常做的那样,但是非常简单,但是非常有用的提示! 简化 Assert 管理 管理 Assert 可能非常困难.如果你想在你的应用程序中多次使用一个图像,你必须一次又一次地指定路径.但是有一个简单得多的解决方案.创建一个 App Assets 类,用于存储所有
-
Android开发中的简单设置技巧集锦
本文实例总结了Android开发中的简单设置技巧.分享给大家供大家参考,具体如下: 1开机图片: android-logo-mask.png android-logo-shine.png 这两个图片一个在上一个在下 ./out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates/classes/assets/images/android-logo-shine.png ./frameworks/base/core
-
Android开发中Button组件的使用
前言 安卓系统中,Button是程序和用户进行交互的一个重要控件,今天我们就来简单的对Button进行学习,其中Button组件是文本按钮(继承自TextView),而ImageButton是图像按钮(继承自ImageView).两者之间的区别在于: 1.Button即可显示文本也可显示图形(通过设置背景图),而ImageButton只能显示图形不能显示文本: 2.Button可在文本周围区域显示小图,而ImageButton无法在某个区域显示小图: 3.ImageButton上的图像可按比例进
-
Android开发中关于组件导出的风险及防范
前言 近年来,移动APP存在一个非常的重要的问题就是安全问题,造成的后果有可能是用户的隐私泄露和财产损失等,对于一款成熟的APP或者是金融银行类APP,这无疑是最致命的,所以对APP进行有效的防范也是很有必要. 近段时间,公司安排了某安全公司对我们的APP进行了全方面的安全测试,根据文档检测结果看,整体上看还是很安全的,其中有一项就是组件导出风险,接下来我们说说四大组件.组件导出必要性.风险以及如何防范. 一.四大组件 从事Android开发,我们都知道Android有四大组件, 分别是: 活动
-
Android开发中一个简单实用的调试应用技巧分享
前言 大家应该都有所体会,在应用开发中,我们常常会进行日志打印或者debug调试,以此来分析运行时的一些信息,便于发现bug和问题.Android Studio的Debug功能很好用,但是有时候有些情况下,就显得不是那么快捷和便利. 比如 我们调试的点在应用一打开的时候,很靠前,例如Application的onCreate方法中,以至于我们不能足够快的设置进程为debug模式 虽然上面的情况可以通过Android Studio的debug运行来解决,但是如果项目很大的话,运行起来也会比较耽误时间
-
Android开发中RecyclerView组件使用的一些进阶技讲解
RecyclerView的优势: 它自带ViewHolder来实现View的复用机制,再也不用ListView那样在getView()里自己写了 使用LayoutManager可以实现ListView,GridView以及流式布局的列表效果 通过setItemAnimator(ItemAnimator animator)可以实现增删动画(懒的话,可以使用默认的ItemAnimator对象,效果也不错) 控制item的间隔,可以使用addItemDecoration(ItemDecoration
-
Android开发中button按钮的使用及动态添加组件方法示例
本文实例讲述了Android开发中button按钮的使用及动态添加组件方法.分享给大家供大家参考,具体如下: MainActivity.java package com.example.lab2; import android.os.Bundle; import android.app.Activity; import android.content.Context; import android.view.Menu; import android.view.View; import andro
-
Android开发中使用颜色矩阵改变图片颜色,透明度及亮度的方法
本文实例讲述了Android开发中使用颜色矩阵改变图片颜色,透明度及亮度的方法.分享给大家供大家参考,具体如下: 一.如图 二.代码实现 public class ColorImageActivity extends Activity { private ImageView mImageView; private SeekBar mSBRed,mSBGreen,mSBBlue,mSBAlpha,mSBLight; //修改后的图片 private Bitmap mModBitmap; //画布
-
Android开发中滑动分页功能实例详解
本文实例讲述了Android开发中滑动分页功能.分享给大家供大家参考,具体如下: android UI 往右滑动,滑动到最后一页就自动加载数据并显示 如图: Java代码: package cn.anycall.ju; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import andro
-
Android开发中ProgressDialog简单用法示例
本文实例讲述了Android开发中ProgressDialog简单用法.分享给大家供大家参考,具体如下: 网上一般对进度条的示例都是如何显示,没有在任务结束如何关闭的文章,参考其他文章经过试验之后把整套进度条显示的简单示例如下: 建立android工程等工作都略去,Google一下就可以了. 下面来介绍主要的Activity ProgressBarDemo.java package com.lveyo.android.demo.progressbar; import android.app.Ac
随机推荐
- Go语言的队列和堆栈实现方法
- jQuery ajax 路由和过滤器使用说明
- jQuery插件Validate实现自定义表单验证
- JQuery的ajax获取数据后的处理总结(html,xml,json)
- ubuntu下kvm 命令行安装64位ubuntu报"Couldn't find hvm kernel for Ubuntu tree."的问题分析
- apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定
- oracle中schema指的是什么意思
- 前置++和后置++ 运算的详解及实例代码
- 一些实用的TAB效果第1/2页
- Bootstrap基本插件学习笔记之Alert警告框(20)
- js Array对象的扩展函数代码
- C#中的switch case使用介绍
- php创建桌面快捷方式实现方法
- yii,CI,yaf框架+smarty模板使用方法
- Python利用operator模块实现对象的多级排序详解
- 使用TypeScript开发微信小程序的方法
- Ajax+PHP简单数据交互
- js实现登陆遮罩效果的方法
- 配置ab来为Nginx服务器做压力测试的方法
- nginx安装(1) ttlsa教程系列之nginx