code ソーシャル

Unityアプリcodetips(88)

スポンサーリンク

//tips

//新規iosアプリの作成

Swiftを利用して新規iosアプリを作成していく。

iPhoneのリマインダーをよく使用するのだが、

・他のデバイスにも同期されてしまうこと
・消去しないと見づらいが、消去すると記録から消えてしまうこと

がわたしの中で使いにくいポイントとなっている。

なので、アプリでデバイスごとに独立してタスクを管理でき、gmailなどと連携させて、後で、どの時点でどのタスクを追加していたのかを見返せるようにし、消去のハードルを下げるようにできないか考える。gmailからタイトル部分を読み出し、excel化できれば自分の軌跡を管理しやすく、手帳の代用としても使えそう。

数年単位での管理も可能とする場合、スケジュール帳などに連携されないシンプルなものの方が個人的には使いやすく思う。

また、chatアプリは下記のものを参考に作成していく。

https://qiita.com/tetsukick/items/dade0314abc2b8db0953

//gamil送付リマインダーアプリ作成

リマインダーアプリにmail送信機能を付与できないか考える。

下記を参照すると、

・MailCore2というライブラリを導入
・ライブラリ導入のためにBridging-Header.hが必要となる

ことがわかる。

以前作成したListAppをベースにして作成する。

import SwiftUI

struct ContentView: View {
var body: some View {
NavigationView {
List(0 ..< 5) { item in
NavigationLink(destination: /*@START_MENU_TOKEN@*//*@PLACEHOLDER=Destination@*/Text("Destination")/*@END_MENU_TOKEN@*/) { /*@START_MENU_TOKEN@*//*@PLACEHOLDER=Content@*/Text("Navigate")/*@END_MENU_TOKEN@*/ }
}.navigationTitle(/*@START_MENU_TOKEN@*/"Title"/*@END_MENU_TOKEN@*/)
}
}
}

struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}

まずはアプリの構成から修正する。

・LIstの項目数の増加
・クリックして別ページではなく、そのままテキスト入力
・右下にボタン配置create new task
・テキストを左スライドさせたら、削除、送付、送付済みのボタン表示

//クリックしてそのままテキスト表示

まず余分なナビゲーションを削除し、テキストとタイトルのみ表示するようにスクリプトを修正する。

struct ContentView: View {
var body: some View {
NavigationView{
List{
Text("")
// 二行目
Text("")
// 三行目
Text("Textのみ")
}.navigationBarTitle("Menu")
}
}
}

https://note.com/kaigian/n/ne02ea8019329

https://note.com/dngri/n/nb243dbd5114a

//テキストを追加するボタンの作成

右下にクリックするとテキスト項目を一行追加するボタンを作成する。

Buttonとspacerで右下にボタンを配置、ボタンのテキストをimageに入れ替え、imageの編集を行った。

HStack {
Spacer()
Button(action: /*@START_MENU_TOKEN@*//*@PLACEHOLDER=Action@*/{}/*@END_MENU_TOKEN@*/) {
Image(systemName:"pencil.tip.crop.circle.badge.plus")
.resizable()
.foregroundColor(/*@START_MENU_TOKEN@*/.black/*@END_MENU_TOKEN@*/)
.padding(/*@START_MENU_TOKEN@*/.all/*@END_MENU_TOKEN@*/)
.scaledToFit()
.frame(width: 80, height: 80)
}
}

https://capibara1969.com/1861/

 

//スワイプによる行削除ボタンの実装

下記を参考にスワイプによる行削除ボタンの実装を行ってみた。

https://capibara1969.com/1443/

行追加の方も確認する。随時追加という機能ではなく一度に追加という機能までは実装できた。

https://teratail.com/questions/238995

import SwiftUI

struct ContentView: View {

@State var tasks = [String]()

var body: some View {
VStack {
NavigationView{
List{
ForEach(0..<tasks.count, id: \.self) { task in
Text(self.tasks[task])}
.onDelete(perform: rowRemove)
}
.navigationBarTitle("Menu")
}
HStack {
Spacer()
Button(action: {self.tasks = createTasks()
}) {
Image(systemName:"pencil.tip.crop.circle.badge.plus")
.resizable()
.foregroundColor(/*@START_MENU_TOKEN@*/.black/*@END_MENU_TOKEN@*/)
.padding(/*@START_MENU_TOKEN@*/.all/*@END_MENU_TOKEN@*/)
.scaledToFit()
.frame(width: 80, height: 80)
}
}
}
}

func rowRemove(offsets: IndexSet) {
tasks.remove(atOffsets: offsets)
}
func createTasks()->[String] {
return ["item1", "item2", "item3", "item4", "item5","item6"]
}
}

struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}

人気の記事

1

コロナによる需要変化 コロナパンデミックの影響で、人々は外に出られなくなり、自宅で過ごす時間が増えました。 この自粛ムードの中、下記のようなビジネスの需要変化が引き起こされています。 【利用者減少】 ...

2

米国レストランの決済時に毎日お世話になっていた「Square」のビジネスモデルについて本日はふれていきたいと思います。 「Square」とは、ネットにつながったモバイル端末と専用のカードリーダーを用意 ...

3

無料でネットショップを開けるアプリとして多くの人に驚きを与えたBASE株式会社が、2019年10月25日東証マザーズに上場しました。2020年2月時点で90万店を超えるショップを抱えるまでに成長してい ...

4

2011年にサービスを開始してから圧倒的な成長率を誇るインテリア通販サイト 【FLYMEe/フライミー】を皆さんご存じでしょうか。 「自分のイメージするインテリア、本当に欲しいインテリアがどこにあるの ...

5

ナイキのSNKRSが、なぜこれほどまでに人気なのか?調べてみました。 きっかけは米国での友達との会話。彼は自分のシューズをみせて、「これ20万円もしたんだぜ。」と語ってくれました。 あまり靴に興味がな ...

-code, ソーシャル
-,

Copyright© BUSINESS HACKER , 2020 All Rights Reserved Powered by AFFINGER5.