Twitterに自動メディア投稿機能「Media Studio」が追加されたらしい
Twitterのメニューに「Media Studio」という項目ができてるのに気づいたぴょん
— ドコカノうさぎ@バーチャル魔法兎少女 (@patsupyon) 2018年8月28日
過去の投稿画像・動画の管理をしたり新規ツイートに使ったりできるみたい。予約投稿機能があったので試しに登録してみた。19時に自動投稿される・・・はず。Twitterの標準機能で出来るなら便利ね。いつ実装されたのかしら pic.twitter.com/ybEoaYFG03
そろそろ予約投稿されるかな・・・って、張り付いてたら予約投稿する意味ないぴょん!
— ドコカノうさぎ@バーチャル魔法兎少女 (@patsupyon) 2018年8月28日
Media Studioからの動画アップロード仕様を確認したら最大フレームレードが60FPSになってる。普通は40FPSまでじゃなかったかしら。
あと一部パートナーは、最大10分の動画を投稿できるのねー。知らない機能あるわね pic.twitter.com/1dqhbjIIkr
そうそう、無事自動投稿されてたぴょん。
— ドコカノうさぎ@バーチャル魔法兎少女 (@patsupyon) 2018年8月28日
Media Studioから投稿すると動画のタイトルなどもつけられるんですね。審査が通れば広告とかも出せるみたい。
あらかじめMedia Studioにアップロード後にツイートする流れなるので、ツイートする前に動画の音がちゃんと入ってるかなどを確認出来るのが便利。 pic.twitter.com/S7YuUOlkwn
Media Studioを使って過去の動画再利用してみるテスト pic.twitter.com/bNGQYlMDKB
— υμβραν (@Umbrasan) 2018年8月28日
平均再生時間も見れるんだけど
— υμβραν (@Umbrasan) 2018年8月28日
面白いことに動画の長さに関わらずどれも6~12秒程度になってる
たとえ5秒以下の動画であっても pic.twitter.com/ZcOLtJnGhg
動画が自動で投稿されるサービスらしい。
審査が通れば広告もつけれる..?
今の所web版限定のサービスで
最初、自分のメニュー一覧にはなかったのですが、「アナリティクス」のメニューを開いて、適当にあれこれ「アナリティクス」のメニューをクリックした後にマイページに戻り画面更新をしたら「アナリティクス」項目の下に「Media Studio」の項目が追加されてました
まだ自分は使っていないので活用してみようかなと思います
でも、基本的にスマホ版を利用しているので使う機会が限られるかなって思います
Swift4アプリ作成「TODOリストアプリ」続き2
frogwoman.hatenablog.jp 前回の続き
一応、「今日はここまでする」ってスケジュール立ててやってるのだけど
なかなか思うように上手くいってくれない
とりあえず今日の目標は「TODOの修正機能」を追加するでした。
できれば直接TODOリストの文字列を修正できるようにしようと思ってCustomCellのやり方をなんとか作ってみたのだけど
なんか微妙だなって思ったのでアラート画面を出してテキストボックスを配置することにしました
StoryboardでCustomCellれたけどコレジャナイ感があったので仕様を変える
— 吉田カエル@長崎 (@Frog_woman) 2017年12月13日
でももしかしたら直接編集できるようにするかもしれない(
まだ判定とか足りてないけどとりあえずできたのがこんな感じ
TODOアプリに修正機能追加ーー
— 吉田カエル@長崎 (@Frog_woman) 2017年12月13日
TableView関連ややこしや... pic.twitter.com/CIcYKifCZC
拘りとしてViewの部分もStoryboardを使わずSwiftコードで作りたかったので、Swiftコード部分の情報が出てこなくて梃子摺りました...
TableViewのCellのSwipeAction部分の実装に関しては分かりづらいし、サンプルがあっても古いしとかで同じように梃子摺ってる人が多いようでした
ある程度完成して良さそうなコードができたらQiitaかブログに書こうかなと思います
と言っても以下の参考URLを見れば大体分かるかと思います
参考URL [ iOS アプリ ] UITableViewをコードで実装するときにあると便利なテンプレート ( swift 3 ) – Unknown Network
051 UITableViewに追加・削除機能を追加 · GitBook
045 TableViewのボタンの拡張 · GitBook
dev.classmethod.jp qiita.com amarron.blog 初めてでも分かる!カスタムセルをSwiftで使用する方法 | Yuuの悠々自適Blog
今度参考にしたいURL qiita.com
Swift4アプリ作成「TODOリストアプリ」続き1
追加として、テキスト欄で改行時にキーボードを下げる処理を追加
改行時にキーボードを下げるにはデリゲートプロトコルを採用しないといけないので、 まずClassにUITextFieldDelegateを宣言し、テキストフィールドのdelegateプロパティにselfを設定します
class ViewController: UIViewController,UITextFieldDelegate
var textField:UITextField = UITextField() override func viewDidLoad() { textField.delegate = self }
あとは、改行が入力された時のデリゲートメソッドがあるのでメソッドと中の処理を記述すればOK
//改行の入力のデリゲートメソッド func textFieldShouldReturn(_ textField: UITextField) -> Bool { view.endEditing(true) //改行コードは入力しない return false }
今回は複数行入力する欄がないのでとりあえずこれだけ テキスト欄改行時じゃなくてEditボタン押した時とかも下げた方が良いだろうから割と面倒だな...
まだ試してないのですが以下の記事に色々なキーボードの下げ方が書かれているので参考にしたいなと思いました qiita.com
他に追加したとこは、Cellを並び替えできるようにしました UITableViewを扱うにはUITableViewDelegateとUITableViewDataSourceプロトコルを追加します UITableViewDelegateはテーブル操作のイベント処理、UITableViewDataSourceはテーブルのセクションやセルの値を設定するためのメソッドが定義されているプロトコルだそうです
class ViewController: UIViewController,UITextFieldDelegate,UITableViewDelegate,UITableViewDataSource {
あとはtableViewを作成してdelegateプロパティにselfを設定します
override func viewDidLoad() { super.viewDidLoad() //テーブルビューを作る let myTableView:UITableView let rect = CGRect(x:0,y:0,width:self.view.frame.width,height:self.view.frame.height) let myTableView = UITableView(frame:rect,style:.grouped) //テーブルビューのデリゲートを設定する myTableView.delegate = self // テーブルビューのデータソースを設定する myTableView.dataSource = self self.view.addSubview(myTableView) }
こんな感じですかね
因みに必須メソッド
// セルの個数を指定するデリゲートメソッド func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return 0 } // セルに値を設定するデータソースメソッド func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = UITableViewCell(style: UITableViewCellStyle.default, reuseIdentifier: "Cell") cell.textLabel?.text = "hoge" return cell }
最初、
移動されたデータを取得 let targetTitle = todoList?[sourceIndexPath.row] //CellValueを取得 if let index = todoList?.index(of:targetTitle!) { //元の位置のデータを配列から削除 todoList?.remove(at:index) //移動先の位置にデータを配列に挿入 todoList?.insert(targetTitle!, at: destinationIndexPath.row) }
って書いてて、そのままQiitaにあげたら 「それだと同じ文字列が渡ってきた時にどうなるの」ってコメントがきて あ、だめやん笑って気づきました..
テスト配列で同じ文字列を使ってなかったので気づけませんでした ってことで以下のように修正
//テスト配列 var todoList:[String] = ["todo01","todo02","todo01","todo03","todo04"] //並び替えが終わったタイミングで呼ばれるメソッド func tableView(_ tableView: UITableView, moveRowAt sourceIndexPath: IndexPath, to destinationIndexPath: IndexPath) { //sourceIndexPath にデータの元の位置、destinationIndexPath に移動先の位置 //CellValueを取得 if let targetTitle = todoList?[sourceIndexPath.row]{ //元の位置のデータを配列から削除 todoList?.remove(at:sourceIndexPath.row) //移動先の位置にデータを配列に挿入 todoList?.insert(targetTitle, at: destinationIndexPath.row) } }
あまりデリゲートの動きが分かってないので自信ないのですが、多分大丈夫だろうとこれをQiitaに載せました qiita.com
並び替えは以下のような感じ
良さそう pic.twitter.com/WEHt35c4cn
— 𝔽𝕣𝕠𝕘𝕎𝕠𝕞𝕒𝕟♂N ͣg ͣs ͣk ͥ (@FrogWomanJP) 2017年12月12日
このUITableViewってだいぶ面倒な感じがする.......
参考URL