array arr = [MenuItem1, MenuItem2, MenuItem3]
class MenuItem{
String desc;
String id;
}
Run Code Online (Sandbox Code Playgroud)
对于上面的类和数组,我如何将它们呈现为动态列表颤振?
行 Row(chidren[Text((desc),Text((id)]);
我想为我的应用程序使用AppTheme android:Theme.Material.Light.DarkActionBar.这可以从SDK 21获得...我的最小SDK是16.我的构建gradle文件中有支持库com.android.support:appcompat-v7:22.0.0.我想在values文件夹下创建第二个样式文件.我想要两个样式文件......一个用于Lollipop ......在它旁边显示22版本的颜色......以及一个用于棒棒糖前的文件.这该怎么做?
刚刚遇到了奶油刀.我在gradle(module:app)文件中添加了这行:compile'com.jakewharton:butterknife:7.0.1'
它同步没有任何错误.我可以将'butterknife.Butterknife'导入到我的类文件中,其中导入usualyy.但是无法导入butterknife.InjectView似乎没有?有什么建议?
但是我的ListArray contacts只是部分填充.前两个条目按预期填充数组(从Logcat输出),但第三个条目无法填充数组.这是MainActivity.java:
public class MainActivity extends AppCompatActivity {
TextView stringTextView;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
stringTextView = (TextView)findViewById(R.id.textView2);
FirebaseDatabase firebaseDatabase= FirebaseDatabase.getInstance().getInstance();
DatabaseReference dbRef= firebaseDatabase.getReference("County/Dublin");
dbRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
DataSnapshot contactSnapshot = dataSnapshot.child("contacts");
Iterable<DataSnapshot> contactChildren = contactSnapshot.getChildren();
ArrayList<Contact> contacts= new ArrayList<>();
for (DataSnapshot contact : contactChildren) {
Contact c = contact.getValue(Contact.class);
Log.d("contact:: ", c.name + " " + c.number);
contacts.add(c);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {} …Run Code Online (Sandbox Code Playgroud) 我想从 Firebase 存储中删除图像。
我尝试过,但它对我不起作用
await _storage.child('gs://flutter-firebase-636d0.appspot.com/e-commerce/header_image/img1.jpg').delete();
Run Code Online (Sandbox Code Playgroud) 上下文:在前端,用户可以输入可用的删除日期。这是我添加日期的方式:
Firestore.instance.collection('availableDates').add({
'availableDates':date});
Run Code Online (Sandbox Code Playgroud)
但我还需要document从 acollection中删除a in Firestore。我不知道documentid,但我知道value唯一的字段。如果我知道文档中的字段值,我将如何删除文档。这是firestore的屏幕截图:
我将如何查询字段(字符串)以查看它是否与数组中的字符串匹配。我知道你可以用这样的方法查询数组:
query.where('venue.id', arrayContains: venueId)
// where venue.id is an List and venueId is a string
Run Code Online (Sandbox Code Playgroud)
但是我如何查询'venue.id' 是否是一个字符串并且venueId是一个List.
flutter 文档中有一个带有幻灯片过渡的交互式示例。动画看起来很棒,但我无法阻止动画不断重复。有一种repeat方法可以用来AnimationController控制动画的循环。但我不知道你可以在哪里运行动画两次?
这是方便的代码..
/ 以下代码实现了上面视频中 // 所示的 [SlideTransition]:
import 'package:flutter/material.dart';
void main() => runApp(const MyApp());
/// This is the main application widget.
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
static const String _title = 'Flutter Code Sample';
@override
Widget build(BuildContext context) {
return MaterialApp(
title: _title,
home: Scaffold(
appBar: AppBar(title: const Text(_title)),
body: const Center(
child: MyStatefulWidget(),
),
),
);
}
}
/// This is the stateful widget that the …Run Code Online (Sandbox Code Playgroud) 我试图使用PageView小部件在 screen2(有一个文本字段)和 screen1 之间滑动来关闭键盘。我试过打电话Focus.of(context).unfocus();在屏幕2的dispose方法中。但是键盘仍然存在。这是一个最小的例子......
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Welcome to Flutter',
home: Scaffold(
appBar: AppBar(
title: const Text('Welcome to Flutter'),
),
body: PageView(
children: [
Screen1(),
Screen2(),
],
)),
);
}
}
class Screen1 extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Text("Screen1");
}
}
class Screen2 extends StatefulWidget {
@override
_Screen2State createState() => _Screen2State();
}
class _Screen2State extends State<Screen2> …Run Code Online (Sandbox Code Playgroud) 我一定是误解了hasDataa的方法QuerySnaphot。在我的StreamBuilder我想返回一个widget通知用户collection查询中没有项目。我已经删除了 Firestore 中的集合,所以那里肯定没有数据。但是当我运行以下代码时:
StreamBuilder<QuerySnapshot>(
stream: Firestore.instance
.collection('Events')
.where("bandId", isEqualTo: identifier)
.snapshots(),
builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot) {
if (!snapshot.hasData) {
print('code here is being executed 1');// This gets executed
return Text('helllllp');
} else {
print('Code here is being executed2'); //And this gets executed
switch (snapshot.connectionState) {
case ConnectionState.waiting:
return new Text('Loading...');
default:
return new ListView(
children:
snapshot.data.documents.map((DocumentSnapshot document) {
return CustomCard(
event: document['event'],
location: document['location'],
service: document['service'],
date: document['date'].toDate(),
); …Run Code Online (Sandbox Code Playgroud)