我按下了Text widget
,必须显示另一个Route
。但我看不到Text widget
的任何onPressed()方法。请帮助。
答案 0 :(得分:13)
只需将您的标题包装在GestureDetector
中即可处理点击次数。然后致电Navigator
的{{1}}重定向到新路线。
pushNamed
答案 1 :(得分:8)
对于Flutter的所有小部件,您可以使用这些小部件实现 onPressed
1。 InkWell()::使用此小部件,您可以在单击时添加波纹效果
InkWell(
onTap: () {
Navigator.pushNamed(context, "write your route");
},
child: new Text("Click Here"),
);
2。 GestureDetector():使用此小部件,您可以实现onTap,onDoubleTap,onLongPress等
GestureDetector(
onTap: () {
Navigator.pushNamed(context, "write your route");
},
onLongPress: (){
// open dialog OR navigate OR do what you want
}
child: new Text("Save"),
);
答案 2 :(得分:6)
使用InkWell
这也给你很好的连锁反应
new InkWell(
onTap: () {
Navigator.pushNamed(context, "YourRoute");
},
child: new Padding(
padding: new EdgeInsets.all(10.0),
child: new Text("Tap Here"),
),
);
或
new FlatButton(
onPressed: () {
Navigator.pushNamed(context, "YourRoute");
},
child: new Text("Tap Here"),
)
答案 3 :(得分:3)
您可以使用 TextButton。因为它有一个透明的背景,它看起来像一个文本小部件。
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- item 1 -->
<div class="row">
<div class="col-5">
<input class="product_name" readonly type="text" name="product_name" value="productName">
</div>
<div class="col-1">
<span class="price">1.00</span>€
</div>
<div class="col-3">
<div class="input_group_button">
<button class="btn plus btn-inc" type="button" data-inc="1">+</button>
</div>
<input class="input_group_field quantity" readonly type="number" name="quantity" value="0" max="9">
<div class="input_group_button">
<button class="btn minus btn-inc" type="button" data-inc="-1">-</button>
</div>
</div>
<div class="col-2">
<input class="total_price" readonly type="number" name="total_price" value="0.00"> €
</div>
<div class="col-1">
<button class="btn" type="button" class="add_cart">Add to cart</button>
</div>
</div>
<!-- item 2 -->
<div class="row">
<div class="col-5">
<input class="product_name" readonly type="text" name="product_name" value="productName">
</div>
<div class="col-1">
<span class="price">9.99</span>€
</div>
<div class="col-3">
<div class="input_group_button">
<button class="btn plus btn-inc" type="button" data-inc="1">+</button>
</div>
<input class="input_group_field quantity" readonly type="number" name="quantity" value="0" max="9">
<div class="input_group_button">
<button class="btn minus btn-inc" type="button" data-inc="-1">-</button>
</div>
</div>
<div class="col-2">
<input class="total_price" readonly type="number" name="total_price" value="0.00"> €
</div>
<div class="col-1">
<button class="btn" type="button" class="add_cart">Add to cart</button>
</div>
</div>