-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
434 lines (332 loc) · 21 KB
/
index.html
File metadata and controls
434 lines (332 loc) · 21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
<!DOCTYPE html>
<html><head>
<meta name="generator" content="Hugo 0.156.0">
<meta lang="ja">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="author" content="seiichi3141" />
<meta name="description" content="プログラミングやFlutter関連の情報" />
<meta name="keywords" content="プログラミング,Flutter,Dart">
<title>健康優良不良プログラマ</title>
<link rel="stylesheet" href="https://blog.seiichirou.jp/sass/main.css" />
<link href="http://fonts.googleapis.com/earlyaccess/notosansjp.css">
<link href="https://use.fontawesome.com/releases/v5.9.0/css/all.css" rel="stylesheet">
<link href="https://blog.seiichirou.jp/css/syntax.css" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap" rel="stylesheet">
<meta name="google-site-verification" content="hSHRu1AofaNfP4SrnmMHbbG0VYL9D17LOFaRnoUxCjc" />
<script async src="https://www.googletagmanager.com/gtag/js?id=G-RP80Q2EE1S"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-RP80Q2EE1S');
</script>
</head><body><header class="bg-dark">
<div class="container">
<nav class="navbar navbar-expand-lg navbar-dark pr-0 pl-0">
<a class="navbar-brand font-weight-bold" href="/">
<i class="fas fa-blog text-light d-inline-block align-top lead mr-3"></i>健康優良不良プログラマ
</a>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="/portfolio">ポートフォリオ</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/apps/aozora/home">Yom!青空文庫</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/apps/cube_lbl_memo/home">CFOP</a>
</li>
</ul>
</div>
<div><a href="https://github.com/seiichi3141"><i class="fab fa-lg fa-github text-light mr-2"></i></a>
<a href="https://www.facebook.com/seiichirou.tanaka"><i class="fab fa-lg fa-facebook text-light mr-2"></i></a>
<a href="https://twitter.com/seiichi3141"><i class="fab fa-lg fa-twitter text-light mr-2"></i></a>
<a href="https://www.instagram.com/seiichi3141"><i class="fab fa-lg fa-instagram text-light"></i></a></div>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
</nav>
</div>
</header><main role="main">
<div class="container">
<div class="pt-2"><ul class="categories nav nav-pills justify-content-center small">
<li class="nav-item">
<a class="nav-link active" href="/">All</a>
</li>
<li class="nav-item ml-1">
<a class="nav-link text-muted"
href="https://blog.seiichirou.jp/categories/flutter/">Flutter</a>
</li>
<li class="nav-item ml-1">
<a class="nav-link text-muted"
href="https://blog.seiichirou.jp/categories/cfop/">Cfop</a>
</li>
<li class="nav-item ml-1">
<a class="nav-link text-muted"
href="https://blog.seiichirou.jp/categories/yom%E9%9D%92%E7%A9%BA%E6%96%87%E5%BA%AB/">Yom!青空文庫</a>
</li>
</ul></div>
<article class="pt-2">
<section>
<div class="card-columns">
<div class="card">
<img class="card-img-top border-bottom" src="https://blog.seiichirou.jp/img/flutter_logo.png" alt="Riverpodならアプリのスクリーンショットも楽になるかも">
<div class="card-body">
<div class="d-flex justify-content-between">
<p class="card-text small mb-1">
<i class="fas fa-folder mr-1 text-muted"></i>
<span>Flutter</span>
</p>
<span class="small text-muted">2020/12/20</span>
</div>
<h5 class="card-title font-weight-bold">Riverpodならアプリのスクリーンショットも楽になるかも</h5>
<p class="card-text small sumarry"><p>次世代のProviderだと何かと話題のRiverpodに手を出しました。すっかり気に入って自作のアプリは全てRiverpodに書き換えてしまいました。</p></p>
</div>
<a href="https://blog.seiichirou.jp/posts/auto_screenshot/" class="stretched-link"></a>
</div><div class="card">
<img class="card-img-top border-bottom" src="https://blog.seiichirou.jp/img/flutter_logo.png" alt="Flutterとstate_notifierとfreezedで作るTodoアプリ">
<div class="card-body">
<div class="d-flex justify-content-between">
<p class="card-text small mb-1">
<i class="fas fa-folder mr-1 text-muted"></i>
<span>Flutter</span>
</p>
<span class="small text-muted">2020/06/10</span>
</div>
<h5 class="card-title font-weight-bold">Flutterとstate_notifierとfreezedで作るTodoアプリ</h5>
<p class="card-text small sumarry"><p>今まではflutter_blocを使っていたんですが、state_notifierとfreezedのコンボでだいぶ記述量が減ると知って試してからすっかり気に入って、開発中のアプリもほとんど書き換えてしまいました。</p></p>
</div>
<a href="https://blog.seiichirou.jp/posts/state_notifier_todo/" class="stretched-link"></a>
</div><div class="card">
<img class="card-img-top border-bottom" src="https://blog.seiichirou.jp/apps/cube_lbl_memo/feature.png" alt="CFOPメソッドメモ">
<div class="card-body">
<div class="d-flex justify-content-between">
<p class="card-text small mb-1">
<i class="fas fa-folder mr-1 text-muted"></i>
<span>CFOP</span>
</p>
<span class="small text-muted">2020/05/19</span>
</div>
<h5 class="card-title font-weight-bold">CFOPメソッドメモ</h5>
<p class="card-text small sumarry"><div class="mt-3 row justify-content-md-center">
<div style="padding: 10px;">
<a href='https://apps.apple.com/jp/app/%E3%83%AB%E3%83%BC%E3%83%93%E3%83%83%E3%82%AF%E3%82%AD%E3%83%A5%E3%83%BC%E3%83%96%E3%81%AE%E8%A7%A3%E6%B3%95-cfop%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%83%A1%E3%83%A2/id1544644116'>
<img alt='Download on the App Store' width="135" height="40" src='https://developer.apple.com/app-store/marketing/guidelines/images/badge-download-on-the-app-store.svg'/>
</a>
</div>
<a href='https://play.google.com/store/apps/details?id=jp.seiichirou.cube_lbl_memo'>
<img alt='Google Play で手に入れよう' width="156px" height="60px" src='https://play.google.com/intl/en_us/badges/static/images/badges/ja_badge_web_generic.png'/>
</a>
</div></p>
</div>
<a href="https://blog.seiichirou.jp/apps/cube_lbl_memo/home/" class="stretched-link"></a>
</div><div class="card">
<img class="card-img-top border-bottom" src="https://blog.seiichirou.jp/apps/cube_lbl_memo/feature.png" alt="CFOPメソッドメモ プライバシーポリシー">
<div class="card-body">
<div class="d-flex justify-content-between">
<p class="card-text small mb-1">
<i class="fas fa-folder mr-1 text-muted"></i>
<span>CFOP</span>
</p>
<span class="small text-muted">2020/05/19</span>
</div>
<h5 class="card-title font-weight-bold">CFOPメソッドメモ プライバシーポリシー</h5>
<p class="card-text small sumarry"><h2 id="広告について">広告について</h2>
<p>本アプリでは、広告配信ツールとしてAdMob(Google Inc.)を使用しており、AdMobがご利用者の情報を自動取得する場合がございます。取得する情報、利用目的、第三者への提供等につきましては、以下の広告配信事業者のアプリケーション・プライバシーポリシーのリンクよりご確認ください。</p></p>
</div>
<a href="https://blog.seiichirou.jp/apps/cube_lbl_memo/privacypolicy/" class="stretched-link"></a>
</div><div class="card">
<img class="card-img-top border-bottom" src="https://blog.seiichirou.jp/apps/aozora/feature.png" alt="Yom!青空文庫">
<div class="card-body">
<div class="d-flex justify-content-between">
<p class="card-text small mb-1">
<i class="fas fa-folder mr-1 text-muted"></i>
<span>Yom!青空文庫</span>
</p>
<span class="small text-muted">2020/05/19</span>
</div>
<h5 class="card-title font-weight-bold">Yom!青空文庫</h5>
<p class="card-text small sumarry"><div class="mt-3 row justify-content-md-center">
<div style="padding: 10px;">
<a href='https://apps.apple.com/jp/app/yom-%E9%9D%92%E7%A9%BA%E6%96%87%E5%BA%AB/id1530145482?mt=8'>
<img alt='Download on the App Store' width="135" height="40" src='https://developer.apple.com/app-store/marketing/guidelines/images/badge-download-on-the-app-store.svg'/>
</a>
</div>
<a href='https://play.google.com/store/apps/details?id=jp.seiichirou.aozora&pcampaignid=pcampaignidMKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1'>
<img alt='Google Play で手に入れよう' width="156px" height="60px" src='https://play.google.com/intl/en_us/badges/static/images/badges/ja_badge_web_generic.png'/>
</a>
</div>
<div class="mt-3">
<a href="/apps/aozora/privacypolicy/">利用規約・プライバシーポリシー</a>
</div></p>
</div>
<a href="https://blog.seiichirou.jp/apps/aozora/home/" class="stretched-link"></a>
</div><div class="card">
<img class="card-img-top border-bottom" src="https://blog.seiichirou.jp/apps/aozora/feature.png" alt="Yom!青空文庫 利用規約・プライバシーポリシー">
<div class="card-body">
<div class="d-flex justify-content-between">
<p class="card-text small mb-1">
<i class="fas fa-folder mr-1 text-muted"></i>
<span>Yom!青空文庫</span>
</p>
<span class="small text-muted">2020/05/19</span>
</div>
<h5 class="card-title font-weight-bold">Yom!青空文庫 利用規約・プライバシーポリシー</h5>
<p class="card-text small sumarry"><h1 id="yom青空文庫-利用規約プライバシーポリシー">Yom!青空文庫 利用規約・プライバシーポリシー</h1>
<h2 id="利用規約">利用規約</h2>
<h3 id="第-1-条適用">第 1 条(適用)</h3>
<ol>
<li>本利用規約は、モバイルアプリ「Yom!青空文庫」(以下「本アプリ」といいます)の利用に関する条件を定めるものです。ユーザーは本アプリを利用することにより、本利用規約に同意したものとみなされます。</li>
</ol>
<h3 id="第-2-条サービス内容">第 2 条(サービス内容)</h3>
<ol>
<li>本アプリは、青空文庫の作品を無料で読むことができるサービスを提供します。</li>
<li>本アプリは、読書体験を快適にするための様々な機能を備えています。</li>
<li>プレミアムプランに登録することで、広告なしで本アプリを利用できます。</li>
</ol>
<h3 id="第-3-条個人情報の取扱い">第 3 条(個人情報の取扱い)</h3>
<ol>
<li>本アプリは、クラッシュログや端末情報などの個人情報を収集する場合があります。収集した情報は、本アプリの改善や利用状況の分析のために使用されます。</li>
<li>収集した個人情報は、適切に管理し、法令に基づく場合を除き、第三者に提供することはありません。</li>
</ol>
<h3 id="第-4-条知的財産権">第 4 条(知的財産権)</h3>
<ol>
<li>本アプリおよび本アプリに関する知的財産権は、すべて開発者に帰属します。</li>
<li>ユーザーは、本アプリを私的利用の範囲内で使用することができますが、無断での複製、転載、改変等は禁止します。</li>
</ol>
<h3 id="第-5-条禁止事項">第 5 条(禁止事項)</h3>
<ol>
<li>ユーザーは、本アプリの利用にあたり、以下の行為を行ってはなりません。
(1) 法令または公序良俗に違反する行為
(2) 犯罪行為に関連する行為
(3) 本アプリの運営を妨害する行為
(4) 他のユーザーまたは第三者に不利益、損害を与える行為
(5) 開発者の知的財産権を侵害する行為
(6) その他、開発者が不適切と判断する行為</li>
</ol>
<h3 id="第-6-条免責事項">第 6 条(免責事項)</h3>
<ol>
<li>開発者は、本アプリの利用により発生した利用者の損害については、一切の責任を負わないものとします。</li>
<li>開発者は、本アプリの変更、中断、停止、中止、データの消失等により生じる利用者の損害について、一切の責任を負わないものとします。</li>
</ol>
<h3 id="第-7-条利用規約の変更">第 7 条(利用規約の変更)</h3>
<ol>
<li>開発者は、必要に応じて、本利用規約を変更することがあります。変更後の利用規約は、本アプリ内に掲載された時点から効力を生じるものとします。</li>
</ol>
<h3 id="第-8-条準拠法管轄裁判所">第 8 条(準拠法・管轄裁判所)</h3>
<ol>
<li>本利用規約の解釈にあたっては、日本法を準拠法とします。</li>
<li>本アプリに関して紛争が生じた場合には、静岡県沼津市を管轄する裁判所を専属的合意管轄とします。</li>
</ol>
<h3 id="第-9-条作品の著作権">第 9 条(作品の著作権)</h3>
<ol>
<li>本アプリで提供している作品は、青空文庫(https://www.aozora.gr.jp/)から取得したものであり、その著作権は青空文庫に帰属します。</li>
<li>本アプリの開発者は、青空文庫の利用規約に基づき、作品を提供しています。</li>
<li>作品の利用に関しては、青空文庫の利用規約(https://www.aozora.gr.jp/guide/kiyaku.html)に従うものとします。</li>
</ol>
<h2 id="プライバシーポリシー">プライバシーポリシー</h2>
<h3 id="1-個人情報の定義">1. 個人情報の定義</h3>
<p>本プライバシーポリシーにおける「個人情報」とは、個人情報保護法第 2 条第 1 項により定義される個人情報、すなわち、生存する個人に関する情報であって、当該情報に含まれる氏名、生年月日その他の記述等により特定の個人を識別することができるもの(他の情報と容易に照合することができ、それにより特定の個人を識別することができることとなるものを含みます。)を意味するものとします。</p></p>
</div>
<a href="https://blog.seiichirou.jp/apps/aozora/privacypolicy/" class="stretched-link"></a>
</div><div class="card">
<img class="card-img-top border-bottom" src="https://blog.seiichirou.jp/img/flutter_logo.png" alt="Flutter for WebをGithubのProject Pagesで公開する">
<div class="card-body">
<div class="d-flex justify-content-between">
<p class="card-text small mb-1">
<i class="fas fa-folder mr-1 text-muted"></i>
<span>Flutter</span>
</p>
<span class="small text-muted">2019/10/07</span>
</div>
<h5 class="card-title font-weight-bold">Flutter for WebをGithubのProject Pagesで公開する</h5>
<p class="card-text small sumarry"><p>Flutterのバージョン1.9からFlutter for Webを正式にサポートしたのでGithubのProject Pagesで公開してみたい。Flutterのexamplesに含まれるFlutter galleryをそのまま公開する手順です。</p></p>
</div>
<a href="https://blog.seiichirou.jp/posts/flutter-web-github/" class="stretched-link"></a>
</div><div class="card">
<img class="card-img-top border-bottom" src="https://blog.seiichirou.jp/img/dynamic_theme.png" alt="FlutterのThemeを動的に変更する">
<div class="card-body">
<div class="d-flex justify-content-between">
<p class="card-text small mb-1">
<i class="fas fa-folder mr-1 text-muted"></i>
<span>Flutter</span>
</p>
<span class="small text-muted">2019/10/04</span>
</div>
<h5 class="card-title font-weight-bold">FlutterのThemeを動的に変更する</h5>
<p class="card-text small sumarry"><p>Flutterにはアプリ全体のカラーリングを設定できる<code>Theme</code>Widgetがある。</p>
<p>基本的な使い方は<code>MaterialApp</code>の<code>theme</code>に自作の<code>ThemeData</code>を渡すこと。これだけで配下の<code>Material</code>Component全体のテーマを変更できるのだが、さらに<code>StatefulWidget</code>で<code>ThemeData</code>を動的に変更できるようにするとアニメーションを加えた上でテーマを変えてくれる機能までついている。</p></p>
</div>
<a href="https://blog.seiichirou.jp/posts/dynamic-theme/" class="stretched-link"></a>
</div><div class="card">
<img class="card-img-top border-bottom" src="https://blog.seiichirou.jp/img/appbar_widget_gradient.png" alt="AppBarの背景をグラデーションにする">
<div class="card-body">
<div class="d-flex justify-content-between">
<p class="card-text small mb-1">
<i class="fas fa-folder mr-1 text-muted"></i>
<span>Flutter</span>
</p>
<span class="small text-muted">2019/10/03</span>
</div>
<h5 class="card-title font-weight-bold">AppBarの背景をグラデーションにする</h5>
<p class="card-text small sumarry"><p><code>AppBar</code>では背景色を指定できるが、それにグラデーションを効かせたい。しかし、<code>AppBar</code>の<code>color</code>には<code>Gradient</code>を設定できないので<code>AppBar</code>をラップした<code>GradientAppBar</code>を実装してみる。</p></p>
</div>
<a href="https://blog.seiichirou.jp/posts/appbar-widget-gradient/" class="stretched-link"></a>
</div><div class="card">
<img class="card-img-top border-bottom" src="https://blog.seiichirou.jp/img/column_widget.png" alt="Column Widgetの使い方">
<div class="card-body">
<div class="d-flex justify-content-between">
<p class="card-text small mb-1">
<i class="fas fa-folder mr-1 text-muted"></i>
<span>Flutter</span>
</p>
<span class="small text-muted">2019/10/02</span>
</div>
<h5 class="card-title font-weight-bold">Column Widgetの使い方</h5>
<p class="card-text small sumarry"><p>子Widgetを垂直方向に並べるWidget。</p>
<p>利用可能なスペースを埋めるためには子Widgetを<code>Expanded</code>でラップする。<code>Column</code>はスクロールしない。スクロールするリストが必要なら<code>ListView</code>を使うことを検討したほうがいい。</p></p>
</div>
<a href="https://blog.seiichirou.jp/posts/column-widget/" class="stretched-link"></a>
</div><div class="card">
<img class="card-img-top border-bottom" src="https://blog.seiichirou.jp/img/appbar_widget.png" alt="AppBar Widgetの使い方">
<div class="card-body">
<div class="d-flex justify-content-between">
<p class="card-text small mb-1">
<i class="fas fa-folder mr-1 text-muted"></i>
<span>Flutter</span>
</p>
<span class="small text-muted">2019/10/01</span>
</div>
<h5 class="card-title font-weight-bold">AppBar Widgetの使い方</h5>
<p class="card-text small sumarry"><p>マテリアルデザインのアプリバーを実装するためのWidget。アプリバーは基本的なツールバーと、場合によっては<code>TabBar</code>や<code>FlexibleSpaceBar</code>などの他のWidgetで構成される。</p></p>
</div>
<a href="https://blog.seiichirou.jp/posts/appbar-widget/" class="stretched-link"></a>
</div>
</div>
</section>
</article><footer>
<div class="container mb-5">
<small>
<ul class="nav justify-content-center">
<li class="nav-item"><a class="nav-link text-muted" href="https://twitter.com/seiichi3141">seiichi3141@</a></li>
<li class="nav-item"><a class="nav-link text-muted" href="https://blog.seiichirou.jp/en/">English</a></li>
</ul>
</small>
</div>
</footer>
</div>
</main>
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"
integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo"
crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"
integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1"
crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"
integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM"
crossorigin="anonymous"></script>
</body>
</html>