SwiftUI中级List如何添加新内容(2020年教程)

功能说明

  • 如何使用List循环显示array内容
  • .self 作为id的使用
  • 如何更新List内容
  • TextField基础使用

代码

import SwiftUI

struct ListAddItemView: View {
  @State var products = ["手机","电脑","水杯"]
  @State var pName:String = ""
  var body: some View {
    VStack{
      TextField("新商品:",text: self.$pName)
      Button(action:{
        print("hello")
        if (self.pName != "")
        {
          self.products.append(self.pName)
          self.pName = ""

        }

      }){
        Text("添加一个商品")
      }

      List(products,id:\.self){ item in
        Text(item)

      }

    }

  }
}

效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • swift在IOS应用图标上添加提醒个数的方法

    在应用图标右上角添加消息数提醒,可以很方便的告知用户该应用中有无新消息需要处理.下面用xcode 7.3.1来简要说明一下如何用swift语言进行此功能的实现. 1.修改 AppDelegate.swift // // AppDelegate.swift // RainbowDemo // // Created by Jackwang on 16/8/17. // Copyright © 2016年 Jackwang . All rights reserved. // import UIKit

  • Swift在控件中添加点击手势的方法

    今天有同行问我,如何在tableview的headerview中添加点击方法,今天就来简简单单说明一下,在swift中添加点击手势的方法是: 复制代码 代码如下: imagepath.addGestureRecognizer(UITapGestureRecognizer(target: self, action: "imagePathClick:")) 怎么样,看上去是不是比oc简单多了呢,简单解释一下,imagePath是我定义的一个UIImageView,可能有人添加了这个手势之后

  • Swift中添加双击手势识别器

    已经完成了单击识别器,但无法弄清楚如何将该单击识别器改为双击. 代码: import Foundation import UIKit class MainBoardController: UIViewController{ let tap = UITapGestureRecognizer() override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view,typ

  • Swift如何为网页承载页面添加更多功能详解

    前言 接上一篇文章,我们在设置中心通常会跳转到某一个网页承载页面,而通常我们会添加一些功能来提升他的体验. 1.添加菊花加载的效果 2.添加跳转到Safari的功能 3.添加复制链接的功能 4.添加分享网页的功能 首先,以WebViewController为例,我们要创建一个UIWebView:然后创建了三个功能按钮在左侧.一个关闭页面的按钮在右侧,并且为他们分别绑定:加载按钮的显示和隐藏直接通过代码实现.头部状态的代码如下: class WebViewController: UIViewCon

  • Swift 2.1 为 UIView 添加点击事件和点击效果

    前言 UIView 不像 UIButton 加了点击事件就会有点击效果,体验要差不少,这里分别通过自定义和扩展来实现类似 UIButton 的效果. 正文 一.为 UIView 添加点击事件 extension UIView { func addOnClickListener(target: AnyObject, action: Selector) { let gr = UITapGestureRecognizer(target: target, action: action) gr.numbe

  • Swift如何在应用中添加图标更换功能的方法

    接之前关于主题的分享,主题满足了用户界面自定义的需求.但是,当应用图标一直为默认的样子时,这一切显得并不那么完美.比如OneDay的主题拥有10种配色,而默认的图标仅仅只有绿白搭配. iOS在10.3之后,增加了动态更换图标的功能,允许在应用中提前内置图标素材,在特定的用户操作或应用定时函数进行替换应用图标.可能的应用场景,比如电商APP提前内置节日的图标.时钟类APP内置时间图标. 实现应用图标功能并不困难,通过三个步骤就可搞定: 1.设置图标信息 2.添加图标文件 3.调用更换函数 一.在i

  • Swift如何为设置中心添加常用功能

    前言 在我们开发所有的应用中,通常会提供包含多项功能的设置中心.这些功能可以包括,给用户推荐自己的其他作品.邀请用户好评.提供反馈通道.邀请用户分享应用.打开官网或某些其他地址. 这些功能虽然用户使用频率不高,但对于应用的设置中心是必备的. 1.跳转到AppStore,邀请好评或推荐其他应用 2.提供系统邮件反馈通道 3.调取系统分享功能分享应用 4.在应用内打开网页,实现官方网址.应用更新说明或打开其他网址 通常设置中心由TableView或CollectionView创建,在didSelec

  • SwiftUI中级List如何添加新内容(2020年教程)

    功能说明 如何使用List循环显示array内容 .self 作为id的使用 如何更新List内容 TextField基础使用 代码 import SwiftUI struct ListAddItemView: View { @State var products = ["手机","电脑","水杯"] @State var pName:String = "" var body: some View { VStack{ Text

  • jQuery添加新内容的四个常用方法分析【append,prepend,after,before】

    本文实例讲述了jQuery添加新内容的四个常用方法.分享给大家供大家参考,具体如下: 添加新内容的四个 jQuery 方法区别如下: append() - 在被选元素(里面)的结尾插入内容 prepend() - 在被选元素(里面)的开头插入内容 //jQuery append() 方法在被选元素的结尾插入内容. $("p").append("Some appended text."); //jQuery prepend() 方法在被选元素的开头插入内容. $(&q

  • spring boot添加新模块的方法教程

    前言 在springboot项目框架里,把一个项目两大模块,主项目main和测试项目test,而我们的测试项目根据功能又可以再分,比如可以有单元测试,集成测试,业务测试等等. 对于一个初学者来说,建立模块的方式需要我们掌握,网上的资料不多,很少讲到这个功能点,大叔在这里普及一下! springboot项目基本结构如图: 下面我们来建立一个集成测试模块intTest,有的团队愿意叫它integTest,都可以,intTest这个名字来自于gradle官方的文档上,大叔也借鉴一下(https://d

  • C# DataGridView添加新行的2个方法

    可以静态绑定数据源,这样就自动为DataGridView控件添加 相应的行.假如需要动态为DataGridView控件添加新行,方法有很多种,下面简单介绍如何为DataGridView控件动态添加新行的两种方 法: 方法一: 复制代码 代码如下: int index=this.dataGridView1.Rows.Add();this.dataGridView1.Rows[index].Cells[0].Value = "1"; this.dataGridView1.Rows[inde

  • python中pandas.DataFrame对行与列求和及添加新行与列示例

    本文介绍的是python中pandas.DataFrame对行与列求和及添加新行与列的相关资料,下面话不多说,来看看详细的介绍吧. 方法如下: 导入模块: from pandas import DataFrame import pandas as pd import numpy as np 生成DataFrame数据 df = DataFrame(np.random.randn(4, 5), columns=['A', 'B', 'C', 'D', 'E']) DataFrame数据预览: A

  • 详解VMware 虚拟机中添加新硬盘的方法

    随着在虚拟机中存储的东西的逐渐的增加,虚拟机的硬盘也逐渐告急,因此急需拓展一块新的虚拟磁盘.以下便是在VMware 中添加新的虚拟磁盘的方法: 一.VMware新增磁盘的设置步骤 (建议:在设置虚拟的时候,不要运行虚拟机的系统,不然添加了新的虚拟磁盘则要重启虚拟机) 1.选择"VM"----"setting"并打开,将光标定位在hard Disk这一选项,然后点击下方的Add按钮 2.点击next,执行下一个步骤 3.根据提示,创建一个虚拟的磁盘,并点击下一步 4.

  • 使用PHPMYADMIN操作mysql数据库添加新用户和数据库的方法

    1.新建数据库: 进入phpmyadmin管理界面以后,找到如下文字"创建一个新的数据库",然后在下面填上要新建的数据库的名称,在后面的下拉列表中选择数据库的编码,如"utf8_general_ci",点击"创建"按钮,这样就新建了一个数据库. 2.新建此数据库的对应帐户 在phpmyadmin管理界面点击"权限",打开链接,点击"添加新用户",在打开的页面中会看到"登入信息",输入用户

  • joomla实现注册用户添加新字段的方法

    本文实例讲述了joomla实现注册用户添加新字段的方法.分享给大家供大家参考,具体如下: joomla原来的注册很简单,为了添加自己想要的字段,比如电话. 在数据库添加这一字段"telphone" 修改libraries\joomla\database\table\user.php 在JTableUser这个类添加新的变量: var $telphone = null; 页面的修改 修改components\com_user\views\register\tmpl\default.php

  • C#使用DropDownList绑定添加新数据的方法汇总

    DropDownList控件又称下拉列表框控件, 控件 列表 中的多行数 据 以隐含 的形式表 示 出 来,当用户需要选择所需列表项时,通过点击 "下三角 "图形 展示 ,用户每次 只能选用一个 数据项.DropDownList控件实际上是列表项 的 容器 ,下拉列表框 用 Items集合表示各项 的内 容.如果在 ASP.NET页面中逐个 的手 动填写 DropDownList控件的列表选项,当列表项很多 的时候会 比较繁琐 ,而且修改 比较麻烦 . DropDownList控件动态

  • 在ASP.NET 2.0中操作数据之五十四:添加新记录时包含一个文件上传选项

    导言: 在前面2节教程,我们探讨了如何使用FileUpload控件从客户端向服务器上传文件,以及如何在数据Web控件里显示二进制数据. 在本节,我们将创建一个web页面以添加新的种类.除了为类的name和description属性添加TextBoxes控件外,我们还要在页面上添加2个FileUpload控件--一个用来上传新类的图片,另一个用来上传类的小说明册子.上传的图片将直接存储在新记录的Picture列.与此相反,小册子将存储在~/Brochures 文件夹,同时将文件路径存储在新记录的B

随机推荐