在桌面视图Swift 3中保存并显示录制的语音笔记

时间:2017-06-21 21:06:25

标签: ios iphone swift uitableview swift3

我是Swift的新手,所以任何帮助都会很高兴。我正在创建这个项目来记录,保存记录的数据并在表格视图中显示数据。现在我只能录制和播放当前录音。如果我再次按下录音,则会删除之前录制的音频。但我想永久保存录制的音频并在表格视图中显示。这是我到目前为止所得到的。提前谢谢!

(document).on("keyup", calculate());

function validateForm(){
  var validation = true;
  validation &= calculate();
  validation &= pmt();
  return validation;
}

function calculate() {
  var p = document.querySelector("#loan").value;
  var y = document.querySelector("#years").value;
  var rate = document.querySelector("#rate").value;
  var r = rate / 100 / 12;
  var n = y * 12;

  var I = (p * r);
  var monthlyPayment = -pmt(r,n,p);
  var mr = (monthlyPayment - I);
  var ti = (monthlyPayment) * n - p;
  var list = JSON.stringify((computeSchedule(p, rate, 12, y, monthlyPayment)), 0, 4);

  document.querySelector("#interest").value = I.toFixed(2);
  document.querySelector("#totalInterest").value = ti.toFixed(2);
  document.querySelector("#capitalRepayment").value = mr.toFixed(2);
  document.querySelector("#monthlyRepayment").value = monthlyPayment.toFixed(2);
  document.getElementById("demo").innerHTML = list;
}

function pmt(rate,nper,pv) {
    var pvif, pmt;

    pvif = Math.pow( 1 + rate, nper);
    pmt = rate / (pvif - 1) * -(pv * pvif);   

    return pmt;
}

function computeSchedule(loan_amount, interest_rate, payments_per_year,     years, payment) {
    var schedule = [];
    var remaining = loan_amount;
    var number_of_payments = payments_per_year * years;

    for (var i=0; i<=number_of_payments; i++) {
        var interest = remaining * (interest_rate/100/payments_per_year);
        var principle = (payment-interest);
        var row = [i, payment, interest>0?interest:0, principle>0?principle:0, remaining>0?remaining:0];
        schedule.push(row);
        remaining -= principle
    }

    return schedule;
}

1 个答案:

答案 0 :(得分:0)

您只能保存一个视频的原因是您只指定了一个文件名。如果要保留多个视频,则必须使用不同的文件名。您可以要求用户输入视频文件名,然后存储它们。您可以检查是否存在具有相同名称的视频in this way

您必须将所有视频文件存储到文档文件夹中,以便在用户关闭并重新打开应用程序时,视频文件仍然存在。一系列视频存储在手机内存中,当应用关闭时,您将丢失所有内容。

将所有视频文件存储在文档文件夹中后,在启动视频列表视图控制器时,您可以use this method从文档文件夹中获取视频名称列表,然后在表格中显示名称图。