2018-10-01から1ヶ月間の記事一覧

【VSCode】LiveServerでローカルサーバーが起動しない時の対処法

VSCodeには、HTML/CSSのコードをブラウザ上で即プレビューしてくれる"LiveServer"という拡張機能が存在する。 非常に便利な機能だが、使用する際には注意点がある。 それは、プレビューされないこと。 htmlファイルを直接開いても、プレビューは起動してくれ…

【Swift】Labelにタップイベントを追加する

出力結果 解説 ストーリーボード ソースコード 出力結果 解説 ・UserInterfaceEnabledを使い、Labelにタップイベントを追加 ・必要なのは、①tag ②UserInterfaceEnabledの許可 ・tagが設定されていないものは、基本的にViewを認識する ・画面全体にタップイベ…

【Swift】UIGestureRecognizerで画面全体にタップイベントを追加する

出力結果 解説 ストーリーボード ソースコード 出力結果 解説 ・UIGestureRecognizerをViewに実装し、画面タップ時の処理を実装する ・出力結果には、画面を4回タップしたので、4つの"タップされました"が表示されている ※注意 ・LabelやButtonなどのUIにで…

【Swift】画面遷移しながら値を渡す方法2

完成図 解説 ストーリーボード ソースコード 完成図 解説 ・前回の記事では、performSegueとprepareによる画面遷移を実装した ↓ nekokichi2yos2.hatenablog.com nekokichi2yos2.hatenablog.com ・今回は、performSegueとprepareを使わずに画面遷移を行う ・s…

【Swift】ローカル通知を実装する

完成図 ストーリーボード ソースコード 完成図 ストーリーボード ソースコード ViewController import UIKit import UserNotifications class ViewController: UIViewController { @IBOutlet weak var textField: UITextField! override func viewDidLoad() …

【Swift】コードレビューを受けたみた2

今週に作ったパスワード生成アプリのコードレビューをSlackのメンバーにお願いしてもらい、数々の指摘をもらったので、備忘録として書きます。 ↓ 「パスワード生成アプリ」 nekokichi2yos2.hatenablog.com ・辞書のキーを数字にすると、いちいち中身を確認し…

【Swift】Switch文で複数の条件式を設定する

複数の値や配列を1度にswitch文で使用したい場合は、そのまま条件式に設定すればいい。 let dic = [100,200,300] switch (dic[0], dic[1], dic[2]) { case (1, 2, 3): print("1 2 3") case (100, 200, 300): print("100 200 300") default: print("nothing")…

【Swift】ToolBarにあるButton間の間隔を空ける

TabBarとは違い、ToolBarにButtonを配置するだけでは、間隔を広げてはくれない。 そこで、 Fixed Space Flexible Space というButton間に間隔を形成するUI部品を設置する。 まずはToolBarとButtonを設置 ↓ 小さい間隔を形成 ↓ 大きい間隔を形成 ↓

【Swift】パスワード生成アプリを作ってみた

完成図 解説 ストーリーボード ソースコード 完成図 解説 ・tableViewのセルにパスワードを代入し、表示する (セルの上にUILabelを設置する方法も考えたが、タップするとクリップボードにコピーされる処理を施せなかったので断念。) ・パスワード生成はパ…

【Swift】複数の乱数(文字列)を複数個、生成してみた

解説 ソースコード 解説 ・今回は、乱数(文字)を取り出し、それを変数に代入(連結)していく処理を繰り返す ・ characters = "abcdefghijklmnopqrstuvwxyz":乱数に含める材料となる文字を文字列で用意 ・len = Int(arc4random_uniform(UInt32(characters.cou…

【Swift】UISwitchを実装してみた

完成図 解説 ストーリーボード ソースコード 完成図 解説 ・UISwitchはON/OFFを司るUI部品 ・UISwitch.isOnは、true/false : ON/OFF ・1つのUISwitchで他のUISwitchのON/OFFを切り替えるには、他のUISwitchをOutletで接続する必要がある ・if文は三項演算子…

【Python】for-else文でループ脱出後の処理

for文で、ループから脱出する&別の処理を実装、を実現するなら、for-else文がおすすめ。 for文内で実行できるので、for文とは別に実装するよりも手間がかからない。 dictionary = {'one':1,'second':2, 'third':3} for key, value in dictionary.items(): pr…

【Python】改行なしでprint

print()内の表示したい値の後に、end=""、を入れると、表示された値の後に好きな文字や記号を挿入できる。 改行なしでprintしたい場合、end=""で何も入れなければいい。 好きな文字を挿入する場合、end="-",end="_"など。 print(100, end="") print(200) # 1…

【Python】最大値・最小値を見つける

max:数値なら最大値、文字列ならaから遠い値 min:数値なら最大値、文字列ならaから近い値 array1 = [1,2,3,4,5,6] array2 = ['f','a','b','s','y'] array3 = ['apple','orange','number','programming','book'] string = 'magic' print(max(array1)) # 6 p…

【Swift】WKWebViewでWebページを表示

解説 ソースコード 解説 ・WebViewがdeprecated(非推奨)となり、今後はWebKit Viewを使用することになる ・インジケーターを一から設定し、座標やスタイルも設定 ・インジケーターを起動させたり止めるには、WKNavigationDelegateでdidstart,didfinishを用意…

【Python】文字列を指定した文字列に変更する

e = 'I like apple' print(e.replace('like', 'love')) #I love apple print(e.replace('apple', 'orange')) #I like orange e = e.replace('like', 'love') e = e.replace('apple', 'orange') print(e) #I love orange

【Python】値を1行で入れ替える

a,b = 1,2 a,b = b,a print(a,b) # 2, 1

【Python】1行で複数の入力値を受け取る

競プロ問題では1行で複数の入力値を受け取る方法が必須。 a,b = map(int, input().split()) #1 2 c,d = map(str, input().split()) #a b print(a,b) #1 2 print(c,d) #a b

【Python】文字列の中に目的の文字があるか探索する

文字列探索の方法は、以下の3つ。 find():先頭から文字を探索 rfind():末尾から文字を探索 文字 in 文字列:Bool値で存在を通知 s = 'My name is human' print(s.find('name')) # 3 print(s.find('is')) # 8 print(s.find('human')) #11 print(s.find('a'…

【Python】リストの文字列を連結させる

リスト内に要素として格納されている全ての文字を連結させて、文字列に変換するには、 変数 = ''.join(s) で変数に連結後の文字列が代入される。 s = 'human' s = ''.join(s) print(s) # human s = 'human' s = '_'.join(s) print(s) # h_u_m_a_n

【Python】入力値をリストに変換する

‘abcdefghijklmn’をリスト(配列)で受け取るには、input()をlistで内包するだけ s = list(input()) print(s) # 入力値:abcdefghijklmn # ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n'] # 入力値:My name is cat # ['M', 'y', ' …

【Xcode】@IBActionで紐付けする時にsenderを変更する方法

UISwitchのON/OFFを切り替えるには、@IBActionのsenderをUISwitchにしなければならない。 しかし、普通に紐付けすると、senderがAnyになってしまい、手作業でsenderをUISwitchに書き換えなければならない。 だが、またまたコミュニティでそのことを質問した…

【Swift】ターミナルでコードを即座に実行する方法

Xcodeで記述したコードが正しく実装できるかの動作テストは、 XCTest シミュレータ 実機 でなければ不可能。 しかし、ただ”コードの動作テストだけ"なら、ターミナルで実行することができる。 ターミナル上で、 $ swift と打てば、コマンドシェル?(対話型…

【Swift】senderを駆使した値渡し遷移

以下の記事で、値を渡しながら遷移する方法を述べた。 ↓ nekokichi2yos2.hatenablog.com nekokichi2yos2.hatenablog.com しかし、その後にTwitterで違う方法で実装できる方法を返信ツイートで教えてもらったので、残す。 解説 ・普通なら、渡す用の変数に渡…

【Swift】UserDefaultsに値を保存・取り出す方法

完成図 解説 ストーリーボード ソースコード 完成図 解説 ・UserDefaults:アプリ内に値を保存する ・UserDefaults.standard.set(保存したい値, forKey:"好きなキー"):値を保存 ・UserDefaults.standard.object(forKey:"好きなキー" ):setで設定した同じキ…

【Swift】画面遷移しながら値を渡す方法

完成図 解説 ストーリーボード ソースコード 完成図 解説 ・performSegue:指定したIdentifierのSegue(遷移)を実行する ・prepare:遷移する際に実行したいコードを実行する ・実際に遷移先の変数やメソッドなどに値を渡すコードは、prepare内で実装する ・…

【yukicoder】No.692 square1001 and Permutation 1

使用言語 問題文 解法プロセス 回答 使用言語 Python 3 問題文 No.692 square1001 and Permutation 1 - yukicoder 解法プロセス 1、最後のPermutaionを食べた方の負け2、Petrが先手、square1001が後攻3、1人1個以上食べて良い→100個,1000個食べても良い4…

【yukicoder】No.700 LOVE

使用言語 問題文 解法プロセス 回答 使用言語 Python 3 問題文 No.700 LOVE - yukicoder 解法プロセス 1、入力した数字の回数だけリストに入力2、上から順に1行の中に’LOVE’の存在を調べればいい 回答 n1,n2 = map(int, input().split()) l = [input() for…

【yukicoder】No.729 文字swap

使用言語 問題文 解法プロセス 回答 使用言語 Python 3 問題文 No.729 文字swap - yukicoder 解法プロセス 1、入力した文字列をリストに分割2、入れ替えたい要素(文字)を逆にする 回答 s = list(input()) i,j = map(int, input().split()) s[i],s[j] = s[j…

【yukicoder】No.725 木は明らかに森である

使用言語 問題文 解法プロセス 回答 使用言語 Python 3 問題文 No.725 木は明らかに森である - yukicoder 解法プロセス 1、入力値の中に’treeone’があるかを調べる2、もしあれば、’forest’に置き換える3、メソッド、replace(変更前, 変更後)を使用 回答 s…