タグ

ブックマーク / qiita.com (1,183)

  • Flutter2でカレンダーを自作する - Qiita

    背景 カレンダーパッケージを使用せずに、カレンダーを作りたい パッケージのものを使うと、融通が効かない 始まりの曜日を変更したい 前提 Flutter 2.2.0 使用 使っているパッケージ バージョンは状況に合わせて変更してください flutter_hooks: ^0.17.0 hooks_riverpod: ^0.14.0+4 intl: ^0.17.0 こういうものができます 横スクロールで月の変更 PageViewを使用しています ドロップダウンメニューで曜日始まり変更 DropdownButtonを使用しています スタイルなどは適宜変更してください カレンダーで必要なリストの作り方 一つの月のカレンダーを作成するためには、それぞれのリストを作成し最後にガッちゃんこする感じになります それぞれのリストでView側で使用したいオブジェクトに変換しています。 前月 今月 来月 前月 /

    Flutter2でカレンダーを自作する - Qiita
  • [Flutter]コピペで使える!ボタンのデザイン16種類をまとめました - Qiita

    Flutter開発する中で、「この形のボタンどうやって書いたっけ?」と調べ直すことが何度かありましたので、ここにまとめておきます。 特に、ボタンウィジェットのshapeで定義できるのは、RoundedRectangleBorderやStadiumBorder、BeveledRectangleBorderなどなど色々ありますが、少し覚えにくいんですよね... 修正点等ありましたら、ご指摘お願いします。 [2020年10月24日追記] Flutter1.22より、ElevatedButtonやTextButton、OutlinedButtonなどのボタンWidgetが追加されたため、そちらも追記しておきます。 いろんなボタンまとめ 1.色付きボタン // Flutter1.22以降のみ ElevatedButton( child: const Text('Button'), style: El

    [Flutter]コピペで使える!ボタンのデザイン16種類をまとめました - Qiita
  • Flutter Containerをいじってみる - Qiita

    Container Widgetとは ContainerはStatelessWidgetのサブクラスです。 用途は文字通りコンテナで、HTMLのdiv要素のように領域確保したり他のWidgetを入れたりします。 設定可能なプロパティ width: コンテナの横幅を指定します。 height: コンテナの縦幅を指定します。 color: コンテナの色を指定します。 decoration: ボーダーのスタイルを変更したい場合などに使用します。 colorプロパティとdecorationプロパティを同時に指定することはできません。 decorationプロパティを使用しつつコンテナの色を変更する場合は、BoxConstraintsクラスを使用します。 margin: マージン幅を指定します。 padding: パディング幅を指定します。 transform: コンテナを回転させたりすることができ

    Flutter Containerをいじってみる - Qiita
  • SKStoreReviewController まとめ - Qiita

    ※ ブラックボックスなところが多いので情報あったら教えてください これは何 Appleが公式で用意したレビュー訴求用のAPI iOS 10.3以降で使える これを使う理由 Appleのレビューガイドラインより https://developer.apple.com/app-store/review/guidelines/#objectionable-content 1.1.7 App Store Reviews: Use the provided API to prompt users to review your app; this functionality allows customers to provide an App Store rating and review without the inconvenience of leaving your app, and we wi

    SKStoreReviewController まとめ - Qiita
  • Flutter TextField デザイン サンプル集 - Qiita

    前書き 「あれ、TextFieldであの表現...どうするんだっけ...」 となった時にでもこの記事を参照していただけますと幸いです。 参考サイト https://medium.com/flutter-community/a-visual-guide-to-input-decorations-for-flutter-textfield-706cf1877e25 サンプルコード 装飾なし

    Flutter TextField デザイン サンプル集 - Qiita
  • 設計を学びたいときに読みたい本一覧 - Qiita

    これは何 の参加記事です。 エンジニアとして開発をしていく以上、設計についての知識を身につけていくことはとても重要です。 とはいえ設計という言葉からは何を勉強するべきかがいまいちピンときません。 この記事では、僕が読んできた設計に関するおすすめのを網羅的に紹介しています。 これから設計を勉強する方の役に立てれば幸いです。 おすすめの一覧 おすすめのを紹介していきます。 他にもおすすめがあればぜひ編集リクエストをください! オブジェクト指向設計実践ガイド 設計を始めに学ぶならこれ、という一冊です。 エンジニアとして開発を行なっている中で、オブジェクト指向設計は一番汎用的に使う設計知識なのではないでしょうか? オブジェクト指向設計を学ぶことで、いわゆる「におう実装」と「良い実装」を見極めることができるようになると思います。 知らなかったら読んだほうが良いキーワード SOLID原則 Cle

    設計を学びたいときに読みたい本一覧 - Qiita
  • [Flutter] package:provider の各プロバイダの詳細 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Google I/O 2019 にて provider というパッケージについて言及があり、公に Google 推奨になりました。 provider | Flutter Package https://pub.dev/packages/provider 使用例を探してみたのですが、scoped_model の代わりに ChangeNotifierProvider を使う例ばかりで、他の多数のプロバイダの情報はほとんど見当たりません。 各プロバイダの使用例について 要望 が上がっているので、そのうち公式に用意される可能性がありま

    [Flutter] package:provider の各プロバイダの詳細 - Qiita
  • MacのPCからADBコマンドを利用できるようにする(すでにJavaがPCに入っている人向け) - Qiita

    目的 Android Debug Bridge(以後ADBと呼称する)のコマンドを使用できるようにする方法をまとめる 実施方法概要 Android Studioのインストール コマンドのパス通し 実施方法詳細 Android Studioのインストール 下記のリンク先にアクセスする。 https://developer.android.com/studio/index.html 画面中央の「DOWNLOAD ANDROID STUDIO」をクリックしてダウンロードを行う。 利用規約に目を通し「上記の利用規約を読んだうえで利用規約に同意します。」にチェックを入れて「ダウンロードする: ANDROID STUDIO(MAC用)」をクリックする。 ダウンロードが開始されるので完了するまで待機する。 ダウンロードしたインストーラーをダブルクリックで起動する。 下記のウインドウが開いたらウインドウ内

    MacのPCからADBコマンドを利用できるようにする(すでにJavaがPCに入っている人向け) - Qiita
  • 【Flutter】ボタンを再利用可能にして使いまわしたい【初学者向け】 - Qiita

    前置き ↓みたいなボタンがあったとします 似たようなボタンが2つ並んでいますね。また他のページでも同じデザインのボタンを多数使用する予定です。 そうなると当然、同じ記述を何度も何度も書くのは面倒になってきます。 デザインとしてはほぼ同じですので、背景色やテキスト、またボタンを押した際の挙動などの一部だけを変更できるようにすれば、無駄な記述が減りコードがすっきりしますよね。 Extract Widgetする 水色で囲った部分が再利用したい部分です。 再利用したいウィジェット(この場合Padding)部分をクリックすると、電球マークが現れます(赤枠で囲った箇所。画像はVSCodeのものですが、android studioでもたぶんほぼ一緒だと思います) 電球マークをクリックすると、メニューが開きます。 Extract Widgetを押します。 すると何やら入力欄が出ますので、任意の名前をつけま

    【Flutter】ボタンを再利用可能にして使いまわしたい【初学者向け】 - Qiita
  • Firefoxは危険なJavaScriptに対応しない - Qiita

    Firefox / Safari MozillaはMozilla Specification Positionsというリストを公開しています。 IETFやW3C、TC39などが提唱しているWeb技術に対して、Mozillaはどのように評価しているかという立ち位置を表明したものです。 あくまで現時点での評価であり、もちろん今後の仕様変更などに伴い評価は変わる可能性があります。 Mozilla's Positions Mozillaはどのように評価しているかの分類。 under consideration 評価の検討中。 important 優れた概念であり、Mozillaにとっても重要である。 worth prototyping 優れた概念であるが、プロトタイプを作成し、フィードバックを得て磨きをかける必要がある。 non-harmful 有害ではないが、良いアプローチではなく、取り組む価値

    Firefoxは危険なJavaScriptに対応しない - Qiita
    yuki_2021
    yuki_2021 2021/07/08
    “あの手この手でユーザデータを吸い上げたいGoogleと、それに抵抗するMozillaの図”
  • スケールする要求を支える仕様の「意図」と「直交性」 - Qiita

    はじめに どんなソフトウェアエンジニアも拡張しやすくメンテナンスしやすいソフトウェアを作りたいと思っているはずです。また、どんなプロダクトマネージャも同様に拡張しやすいシンプルな要求を作りたいと考えているはずです。 しかし、将来の不確実性や発展性に対して見通しを立てるのは難しいものです。そのため、開発チームの思いとは裏腹にソフトウェアの複雑性はどんどんと増大していきます。気がついたら技術的負債と呼ばれるような手もつけられない泥団子になってしまうということもしばしばです。誰もが生産性を下げるために機能を追加したいわけではなく、ビジネス価値を提供するために機能を追加したいだけなのにです。 このような状況を避けるためにはどうしたらよいのでしょうか。今回はその一つの手段として、要求には隠れた「意図」があり、それを発見していくことの重要性についてまずはお話しします。さらにわかりやすい要求が持つ仕様の

    スケールする要求を支える仕様の「意図」と「直交性」 - Qiita
  • 伝わる文章作成の基本を学ぶための記事・学習コンテンツのまとめ - Qiita

    短いメッセージを書くことはできても、まとまった文章を書くのに苦労している人は多いのではないでしょうか。 この記事では、まとまった文章を作るときの技術を学ぶことができる記事や学習コンテンツを紹介します。新人エンジニア向けです。 文章の「型」を学ぶ まとまった文章を書くには、「型」が必要です。頻繁に使うものは、「型」を覚えてしまいしましょう。 バグレポートの書き方を学ぶ エンジニアとして書く文章の代表例が、バグレポートです。 バグレポートでありがちな失敗として「何が問題だと思っているのか」が伝わらないというものがあります。 これを防ぐために、「期待する結果」「実際の結果」「再現手順」の3つを必ず書くようにしましょう。 質問の書き方を学ぶ エンジニアが扱う技術は、最初はわからないことだらけです。 それを解決するために、質問の文章を作成する技術が必要となります。 概ね下記の4つの情報があれば、良い

    伝わる文章作成の基本を学ぶための記事・学習コンテンツのまとめ - Qiita
  • Swift の非同期処理の例(複数パターン) - Qiita

    はじめに こんにちは! iOSエンジニアのやまたつ です☺️ Oshidoriというアプリを個人で開発し、リリースしています!!!Oshidoriというアプリを個人で開発し、リリースしています!!! 非同期処理を書く方法っていくつかあるんだなあと思ってまとめてみたくなったので書きました! 実務だったり、個人アプリで使った非同期処理のパターンを書きたいと思います。 複数通信の時の処理も書きます。 Promise Kit が有能すぎて感動したので Promise Kit 贔屓になってます。ご了承ください。 クロージャを使って非同期処理を書く // ここがクロージャ //////////////////// func fetchUser(id: Int, completion: @escaping (User?,Error?)->()) { // ここで通信 userInfoRep.fetch(

    Swift の非同期処理の例(複数パターン) - Qiita
  • Swift では Protocol を積極的に使おう - Qiita

    これはなに Swift ではクラスベースの開発よりもプロトコルベースの開発にしていきましょう。という提案です。 もうサブクラスとはお別れです。 環境 Swift 2.2 Protocol とは Objective-C では @interface と書いていたものといえばイメージがしやすいと思いますが、 Swift ではこれの機能がかなり拡張されています。 特に Swift 2.0 以降では Protocol Extension の機能が追加され、 Protocol がデフォルト実装をもてるようになったのでさらに便利になりました。 使用例 とりあえず、犬をわんわんニャーニャー鳴かせてみましょう。 protocol Animal { var name: String { get } var age: Int { set get } func bark() -> String }

    Swift では Protocol を積極的に使おう - Qiita
  • Cookieを永続化して、どこまでも個人を追跡するEvercookie - Qiita

    Evercookieは、ブラウザに究極的に永続的なCookieを生成するJavaScript APIです。 その目的は、標準的なCookie、Flash Cookieなどを削除した後でもクライアントを識別し続けることです。 これは、可能なかぎり多くのストレージにCookieデータを保存することで達成します。 いずれかのストレージからCookieが削除されたとしても、ひとつでも残っている限り、Evercookieは残ったデータからCookieデータを復旧します。 Flash LSO、SilverlightもしくはJavaが有効な場合、Evercookieはブラウザを超えて同じクライアント上の別のブラウザにCookieを伝播することすら可能です。 リポジトリは、Samy Kamkarおよび多くのコントリビュータによって作られています。 Browser Storage Mechanisms E

    Cookieを永続化して、どこまでも個人を追跡するEvercookie - Qiita
    yuki_2021
    yuki_2021 2021/06/18
    “huluやspotifyが使っていた顧客分析ツールKISSmetricsがかつてEvercookieを使用しており、ユーザ情報を追跡していたようです。 NSAがTorユーザを追跡するために使っていたようです。”
  • プログラマーのための原則(2 万字) - Qiita

    はじめに 今でも語り継がれる「原則」は、それだけ価値のあるコンセプトです。 歴史を振り返ることは、失敗を防ぐための効率の良い方法になります。 👑 DRY (Don't repeat yourself) 「同じことを繰り返すな。」 Andy Hunt と Dave Thomas の著書『達人プログラマー』(1999 年)で提唱された原則で、プログラミングに関する最も重要な原則といっても過言ではありません。 DRY 原則だけでなく、どんなデザインパターンやベストプラクティスでも、同じ処理が重複することは基的に許されていません。 これにはどういう意図が込められているのでしょうか。 🔖 表面的な理由 この原則は、コードの再利用性を高め、そのために疎結合な状態を保つことは、極めて有用なことを示唆します。 1 箇所を直せば済むべき箇所をあちこちに分散させてしまうのは、自分で事故を招いているのと同

    プログラマーのための原則(2 万字) - Qiita
  • 2年かけて個人で全く新しいSNSアプリを作ったお話し - Qiita

    こんにちは。歴10年のアプリエンジニア(Best of AppStore🏅受賞歴あり)です。 neeboor🗯という位置情報を使った新しいSNSアプリを作りました。 toC向け&コンテンツ系&モバイルアプリというサービスの特性上、最初からある程度高い完成度のサービスを提供しないとユーザーの手に取ってもらえないなと思い、UI/UX中心にかなりこだわって開発した結果、開発に2年以上かかってしまいました。 今回はサービスの紹介をしつつ、開発で苦労した点や工数をかけた点について記事にしたいと思います。 サービスの紹介 neeboor🗯は、「あなたの生活圏をもっとおもしろくするSNS (Make your living area hackable)」というコンセプトの位置情報系SNSアプリです。従来のローカル系サービス(=地域情報サイト、半径◯メートルでお店や友達探す系、出会い系、ナビ系、トラ

    2年かけて個人で全く新しいSNSアプリを作ったお話し - Qiita
    yuki_2021
    yuki_2021 2021/06/15
    使ってみないと分からないけど、都市部限定のsnsっぽい感じ
  • URLから指定したURLクエリキーの値を取得する - Qiita

    URLから指定したURLクエリキーの値を取得する実装コード例です。 例) URLのidクエリ値を取得したい https://hoge.com?name=shota&id=1234 extension URL { /// 指定したURLクエリパラメーターの値を取得する /// /// - Parameter key: URLクエリパラメーターのキー /// - Returns: 指定したURLクエリパラメーターの値(存在しない場合はnil) func queryValue(for key: String) -> String? { let queryItems = URLComponents(string: absoluteString)?.queryItems return queryItems?.filter { $0.name == key }.compactMap { $0.valu

    URLから指定したURLクエリキーの値を取得する - Qiita
  • みんな話すのが苦手 - Qiita

    デッサンも プログラミングも 必修じゃなくていいので 打ち合わせとか議論の訓練を必修にしてほしい 社会に出て感じたのは大人数がいる場で話すのが下手な人が多いなーという事。 それによって無駄な打ち合わせ・議論がたくさん見受けられる。 下手な人のケース 一人で延々話し続ける 割とよく居るパターンの人 考えながら話してるのか要点がまとまってない。 コメントのような関係ない部分まで話す。 なので、話が長い割に何言ってんのか良く判んない。 伝わらない・理解されていない 話した人以外 ??? 状態にする人 伝わってないからもう一回話すが、 同じことを話すのでやっぱり伝わらない。 時間と酸素が浪費されてゆく 流れをぶった切る 自分が言いたい内容だけを言いたいので、発言できる隙を見つけては言いたいことだけ言う。 無理やり議題をそっちに移行させようとするので、進行している人がちゃんと制御しないと尻切れトン

    みんな話すのが苦手 - Qiita
  • SwiftでUILabelのテキストを中央に表示する。(複数行) - Qiita

    タイトル通りです。 しかし、意外と一つにまとまっているものがなかったので書いてみます。 ついでにlabelで複数行記述しています。 let label = UILabel() // widthは適当に設定。画面幅を取得しlabelが中央に配置されるようにする。 let screenwidth = Float(UIScreen.main.bounds.size.width) let width = 300 let widthGap = (screenwidth - Float(width)) / 2 label.frame = CGRect(x: Int(widthGap), y: 100, width: Int(width), height: 60) // textAlignmentで文字を中央揃えに。 label.textAlignment = NSTextAlignment.cente

    SwiftでUILabelのテキストを中央に表示する。(複数行) - Qiita