试图制作一个包含可重新排列的内容项的页眉和页脚的 ui 。有一个名为header的属性,我们可以从中添加标题项。但是如果我还想添加页脚项目该怎么办。
import 'package:flutter/material.dart';
class MyStickyHeader extends StatefulWidget {
@override
State<StatefulWidget> createState() {
return _MyStickyHeaderState();
}
}
class _MyStickyHeaderState extends State<MyStickyHeader> {
List<Widget> _list = [
Text("Apple"),
Text("Ball"),
Text("Cat"),
Text("Dog"),
Text("Elephant")
];
@override
Widget build(BuildContext context) {
return Container(
margin: EdgeInsets.only(top: 30, left: 10),
color: Colors.white,
child: showData(),
);
}
Widget showData() {
return Container(
child: ReorderableListView(
header: Container(
height: 100,
color: Colors.red,
),
children: _list
.map((item) => Container(
padding: EdgeInsets.all(10),
key: Key("${(item …Run Code Online (Sandbox Code Playgroud) 以前所有的对话框和textField都运行良好.但不是我不知道这些TextFields如何突然变为单行三联.(就像这里的一些消息......)
let alert = UIAlertController(title: "Cancel Booking !!", message: "Are you sure you want to cancel your booking?", preferredStyle: .alert)
alert.addAction(UIAlertAction(title: "No", style: .default, handler: nil))
alert.addAction(UIAlertAction(title: "Yes", style: .default, handler: self.cancelMessageDialog))
self.present(alert, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)
使用的库:dart_pdf搜索后我在GITHUB 中发现了同样的问题,但无法解决问题。我试过这个,但出现模糊的图像。请帮忙!!
ByteData data = await rootBundle.load('assets/test.jpg');
var codec = await instantiateImageCodec(data.buffer.asUint8List());
var frame = await codec.getNextFrame();
var imageBytes = await frame.image.toByteData();
PdfImage assetImage = PdfImage(pdf.document,
image: imageBytes.buffer.asUint8List(), width: 86, height: 80);
Run Code Online (Sandbox Code Playgroud)
渲染图像:
Incase android 一切正常。我也想在 iOS 中实现相同的功能,但得到不同的值。请检查下面的图片描述。
在 Java/Android 案例中:
我试图将字符串转换为base64字节数组中的Java一样
byte[] data1 = Base64.decode(balance, Base64.DEFAULT);
Run Code Online (Sandbox Code Playgroud)
在 Swift3/iOS 案例中:
我试图将字符串转换为swift 中的base64 字节数组,例如
let data:Data = Data(base64Encoded: balance, options: NSData.Base64DecodingOptions(rawValue: 0))!
let data1:Array = (data.bytes)
Run Code Online (Sandbox Code Playgroud)
当将依赖项类路径从'com.android.tools.build:gradle:3.2.1'更新为*'com.android.tools.build:gradle:3.3.2'时,会发生此问题 。
项目级 build.gradle
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.3.2'
}
}
allprojects {
repositories {
google()
jcenter()
}
}
rootProject.buildDir = '../build'
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
project.evaluationDependsOn(':app')
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Run Code Online (Sandbox Code Playgroud)
应用程序级 build.gradle
def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
localPropertiesFile.withReader('UTF-8') { reader ->
localProperties.load(reader)
}
}
def flutterRoot = localProperties.getProperty('flutter.sdk')
if (flutterRoot == null) {
throw …Run Code Online (Sandbox Code Playgroud) 无法使用precacheImage函数将本地图像从资产加载并缓存到 flutter 中的 GridView 或 ListView。
问题:滚动列表时,图像总是重新加载。
class AppLandingPage extends StatelessWidget {
final String title;
AppLandingPage({Key key, this.title}) : super(key: key);
@override
Widget build(BuildContext context) {
return Scaffold(
drawer: DrawerPage(),
body: NestedScrollView(
headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
return getToolbarWidget("Home title");
},
body: setDataToContainer(),
));
}
}
Container setDataToContainer() {
return Container(
color: Colors.white,
margin: EdgeInsets.only(left: 4.0, right: 4, bottom: 4, top: 4),
child: CustomScrollView(
slivers: <Widget>[
SliverList(
delegate: SliverChildListDelegate(
[
HeaderWidget("Header 1"),
],
),
),
SliverGrid(
gridDelegate: …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用flutter中的HTML和CSS创建PDF。因此,在某些情况下,我必须使用html和css渲染资产图像。
在android的情况下,它通过使用以下代码中提到的资产文件位置(例如(file:/// android_asset / ...))进行渲染:
makeProfileImage() {
return '<img src="file:///android_asset/flutter_assets/assets/image_name.jpg">';
}
Run Code Online (Sandbox Code Playgroud)
如何在iOS中获取资产文件路径,如(file:/// android_asset / flutter_assets / ...)?
Future<void> printPdf() async {
print('Print ...');
await Printing.layoutPdf(onLayout: (PdfPageFormat format) async {
return await Printing.convertHtml(
format: PdfPageFormat.a4
.applyMargin(left: 0, top: 0, right: 0, bottom: 0),
html: '<html><head>' +
getRatingbarCss() +
'<style>.checked {color: red;}</style>' +
'</head><body style="margin:0;padding:0" bgcolor="white">' +
makeProfileImage() +
'<h2 style="color:black;">Star Rating</h2><span class="fa fa-star checked"/><span class="fa fa-star checked"/><span class="fa fa-star checked"/><span class="fa fa-star"/><span class="fa fa-star"/></body></html>');
});
}
Run Code Online (Sandbox Code Playgroud)
pubspec.yaml
dev_dependencies:
flutter_test: …Run Code Online (Sandbox Code Playgroud) 我正在尝试删除使用flutter-iOS-app中的HTML / css创建的PDF的外部空白边距。在android的情况下,布局工作正常,但在iOS的情况下,存在左页边距问题,如iOS附件所示。
使用DartPdf在Github上发行: 在DartPdf上发行
在Github上使用flutter_html_to_pdf 发行:在flutter_html_to_pdf发行
我使用这些库是为了将html转换并呈现为pdf。
pubspec.yaml
dev_dependencies:
flutter_test:
sdk: flutter
pdf: ^1.3.17
printing: ^2.0.0
flutter_full_pdf_viewer: ^1.0.4
Run Code Online (Sandbox Code Playgroud)
将HTML打印为PDF的方法:
Future<void> printPdfMethod() async {
print('Print ...');
await Printing.layoutPdf(onLayout: (PdfPageFormat format) async {
return await Printing.convertHtml(
format: PdfPageFormat.a4
.applyMargin(left: 0, top: 0, right: 0, bottom: 0),
html:
'<?xml version="1.0"?> <html> <head> <title>CSS Template</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <style> @page { size: A4; margin: 0mm 0mm 0mm 0mm; padding:0mm 0mm 0mm 0mm; } body …Run Code Online (Sandbox Code Playgroud) 这是我的问题:-上周我生成了签名的apk并上传到playstore。-我已经在该APK中实现了Firebase身份验证,但使用了调试密钥(调试md5)。
现在,我想为此应用程序生成已发布的密钥哈希(发布md5),但是由于我的密钥别名使用空格(我的名字)而不是(my_name),所以导致出现类似[非法选项:名称]及以下的问题。
现在我知道,如果我使用(my_name)之类的空格来创建别名,那么将很容易生成md5哈希密钥。
keytool -exportcert -list -v -alias my name -keystore /home/bpn/Music/keystore.jks
Run Code Online (Sandbox Code Playgroud)
非法选项:名称
keytool -list [OPTION] ...
列出密钥库中的条目
选项:
-rfc以RFC样式输出
-alias要处理的条目的别名
-keystore密钥库名称
-storepass密钥库密码
-storetype密钥库类型
-providername提供程序名称
-providerclass提供程序类名称
-providerarg提供程序参数
-providerpath提供程序类路径
-v详细输出
通过受保护的机制保护密码
对所有可用命令使用“ keytool -help”
我正在使用 HTML/CSS 创建 PDF 视图。因此,在某些情况下,我们需要从本地资源文件夹渲染图像。当我们尝试从资源文件夹渲染文件时,图像不显示。如何解决这个问题?
iOS 屏幕截图:
完整源代码:
RenderHtml.dart
import 'package:flutter/material.dart';
import 'dart:async';
import 'dart:io';
import 'package:flutter_full_pdf_viewer/flutter_full_pdf_viewer.dart';
import 'package:flutter_html_to_pdf/flutter_html_to_pdf.dart';
import 'package:path_provider/path_provider.dart';
void main() {
runApp(MaterialApp(
home: MyApp(),
));
}
var base64Image = "";
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
String generatedPdfFilePath;
@override
void initState() {
super.initState();
generateExampleDocument();
}
Future<void> generateExampleDocument() async {
var htmlContent = """
<!DOCTYPE html>
<html>
<head>
<style>
table, th, td {
border: 1px …Run Code Online (Sandbox Code Playgroud)