フリープログラマー日記

iOS,アンドロイド開発を気ままにしながら生きてるおじさんのブログです。

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

第32回 凡ミス。setPuddingとsetMerginsについて

第20回で、setMarginsが使えない。みたいなことを書きましたが、凡ミスでした。setPadding も setMargins もちゃんとあるのですが、どこか見つけられなかっただけと言うお粗末な結論です。しかし、これは、きちんと書き留めなければいけないと言うことで、書…

第31回 JAVA の ArrayLiist は便利!

アプリの画面が少しだけ前に進んでいます。 懸案だった横に長い氏名表示域を短くし、右側にエントリーされた選手名を表示するようにしました。 注目すべきは、タップした順に出場者が表示されている事で、なんとこれは自然になってしまったというjava の仕様…

第30回 static を使いまくる

何をしてるのか・・・ しかし、かっこいいから、時間を忘れてプログラムを改造中。元のプログラム。 if (entry) { setBackgroundColor(Color.argb(255,255,255,30)); } else { setBackgroundColor(Color.argb(255,200,200,200)); } こうなりました。 if (ent…

第29回 Static が便利だった!

今まであんまり使ったことのない static キーワード。何かカウントするときとか便利だよ〜とかって、それくらいの知識だけで。 でも、これって、インスタンス作らんでも使えるやんってことで、ビューを作る情報が散乱してるのを集めてみることにしました。 i…

第28回 アプリ設定ファイル

アプリ作る時って、やっぱりアプリ設定ファイルは作るんですよね? いい方法があるのかもしれないですが、私の場合は、settings クラスを作って、そこにアクセスして作っています。これが簡単な気がする。 なぜ、こんな話になっているとというと、とってもま…

第27回 Androidスクロールビューでタッチイベント

スクロールビューに名前の入ったビューアイテムが乗っています。スクロールビューのタッチイベントは嫌なので、このビューアイテムにタッチイベントをセットすることにしました。私は、アマプログラマーなので、やれることだけしかしません。できるだけ難し…

第26回 氏名の入出力!

ちょっと苦戦します。スクロールビューのタッチイベントの扱いって難しいですね。話は、少し前になりますが、Androidのスクロールビューは単一のレーアウトにまとめてのせるしか方法がなかったので、iOSとは同じ書き方ができませんでした。Androidの方にひと…

第25回 クラスの設計

この連載を読んでいただき、ありがとうございます。「大発見やー」と自画自賛していることを書いてみたいと思いますが、もしかしたらそんなのは当たり前のことなのかもしれません。プロのプログラマーは隠してるんじゃないの?みたいに思えてきますが。まず…

第24回 設計変更。クラスって難しい。

前回、Runner クラスが便利そうだと書きましたが、進めているうちに、Runner クラスを統括していく、Team クラスがあるといいなと思いつき(私は常に思いつきでプログラムする・・・)、Team クラスを書いてみました。Androidの記録方法、SharedPreferences…

第23回 クラスの設計は難しいです!

スクロールビューまで来て、はたと困りました。なぜなら、思いつくままにプログラムを書く癖があるので、後になってここはどうしようかと考えてしまうから。で、困った原因はというと、Runnerクラスってこのアプリの中心的存在なのに、いちいち消したり、フ…

第22回 Androidでスクロールビュー

ちょっと、イベントがあり、留守にしてました。 早速ですが、続きで、スクロールビューの設置。Android版で注意するべきことが一つあり、スクロールビューにのせることができるのは一つのオブジェクトになっているということです。なので、中に入れるレイア…

第21回 swiftでスクロールビュー

スクロールビューって、利用しない手はないのに、なかなかいいサンプルにお目にかかりません。ぜひぜひ参考にしてください。結構、教科書的に書けたように思います。プログラムは3つの部分に分かれます。 A:スクロールビューを呼び出すプログラム B:スク…

第20回 setMarginがどこかに消えた!

ボタンを貼り付けました。 と言っても、見た目だけです。 なぜかというと、以前はあったはずのsetMarginが出てこない。Viewを生成し、setMerginを使おうとしても出てこない・・・謎。 今回、左ボタンは、左側のマージンを指定、右ボタンは、右側のマージン指…

第19回 swift で UIButton!

swift で ボタンを作ってみます。 // UIButton 2個、「メニューに戻る」「奏者選択終了」 // ボタンのサイズは共通 let buttonSize: CGSize = CGSize(width: myWidth*0.4, height: myWidth*0.1) let cancelButtonPoint: CGPoint = CGPoint(x: myWidth*0.07, …

第18回 AndroidのTextViewでサイズ指定の肝!

iOSでUILabelを使ったことは、AndroidではTextViewでやるといいようです。 氏名の入力で使うことになる予定ですが、テキストの入力は、iOSではUITextView、Androidでは、EditTextというクラスを使うようです。この辺りはなるべくシンプルにいきたいです。で…

第17回 iPhoneとiPadで似た表示を作る。(UILabel使用)

ソースコードをすべてアップしてませんが、前回までで、メインメニューと4つの画面の行き来ができるようになっています。私のブログを読んでくださっている方の中には、プログラム精通者も入れば、初心者の方もいると思いますし、若い方も、ご年配の方もい…

第16回 AndroidではRunnableで画面遷移

前回は、swiftでクロージャを使って画面遷移をしましたが、javaでは、Runnableを使うと同じようなことができます。前回の繰り返しですが、1.呼び出される側に、ランナブル変数を置く。 2.呼び出し側から、このランナブルに「どこに制御が移るか」を教え…

第15回 swift、ハンドラーとかクロージャとか

よくわからないんです。 初心者にとっては絶壁に登るような感覚ですよね?なので、初心者目線で、説明して見ます。クロージャというのは、「次にここから実行してね。」と伝える手段という見方でいいと思います。 あるエリアがタップされたら、次は(同じク…

第14回 分岐のためのエントリーポイント(swift)

現在のビューコントローラーはこんな感じになっています。 ビューをフルサイズにしているのに、センターで位置決めしているのがちょっと不思議な感じですが、フルサイズ以外を選択したときはこの方が都合がいいので、このままにしておきます。 class Entranc…

第13回 タッチイベントについて(Swift & Java)

Swift と Java。全然似てないのに、共通なプログラミングをしようとする試みは、無謀? そう思いつつも、さらっとやってみようという、このブログであります。はい。で、今回は、イベント処理なんですが、基本的に、ビュー(UIView & View)のclassの中に書…

第12回 メニュー画面の文字入れ(タイトル文字)

タイトル文字を入れました。 2行のタイトルですが、センター上部に入れる文字ということで、共通の処理を行うために関数を作って呼ぶようにしています。 上下の位置調整は、呼び出す側の引数のcenterで行うようにしました。 これだと、swiftでは左上が起点…

第11回 ミスっていました。

前回、トラックの位置が微妙に違うと気づいていて、そのまま、記事を乗せてしまいましたが、原因がつかめました!これまた、お恥ずかしい話なんですが。 // トラックの描画 float r = 0.19f; while (r<0.28f) { r += 0.02f; track(width * r, canvas); } こ…

第10回 とりあえず解決!

NSStringのメソッドを調べていたら、ありましたね。NSString.size(withAttributes: NSAttributeStringKey : Any]) 要するに、文字属性=フォントサイズとかを決めたら、そのサイズを返してくれると言う便利なメソッドですね。 ありそうだし、「お前、そんな…

第9回 進捗(しんちょく)状況

忙しさもあったんだけど、ちょっと壁にぶち当たっているというのも本当のところで。たまには、こういう、トラブっているところも報告していいんじゃないかと思っています。swiftへの移植作業を進めているのですが、現在、こんな画面に。横の2本線は、スクリ…

第8回 文字入れ(Android版)

もとの画像のように大きな文字で、4つのメニュー文字を入れてみます。あんまり時間がなかったので、今日はAndroid版だけです。mainMenu.javaの内部関数として書いています。 void menuBigChar(String string,int width, float y, int position, Canvas canv…

第7回 Android版、直線と半円を描いてみる。

先にswift版を作りましたが、Android版に移植しました。半円を描くところで少し手間取りましたが、同じようにできました。 // トラックの描画 float r = 0.19f; while (r<0.28f) { r += 0.02f; track(width * r, canvas); } } void track(float r, Canvas ca…

第6回 swift で お絵描き!

前回の続きです。 と言っても、少し寄り道ですが、swift でお絵描きをする方法の紹介です。 ま、あちこちにたくさん情報があるので、新しくはないですが。考えたのは、次のような直線と半円を繋いだ線を描くこと。画面のセンターから、左右に 'a' だけ離れた…

第5回 iOS と Android で画像を表示するプログラム

色々なTipsをご紹介するのが、このブログの最大の目標ですが、 やみくもにコードを並べても芸がないので、方向性を出してみます。3年くらい前に作ったiOSアプリをご覧ください。複数個のストップウォッチの機能を持たせたアプリです。 左側はメニュー画面。…

第4回 swift & javaで正方形を描くプログラム

いやー、プログラムって本当に楽しいですね〜今日のお題は、「正方形を描く」です。 今回作って見たのは単純なものです。 見た目を合わせるために、サイズは短辺の20%としています。 もちろんこれだけであれば、ストーリーボードを使ったり、 XMLファイル…

第3回 iOSとAndroidで似た画面を作る方法!

iOSとAndroidの画面を似せて行きます。 まず、Androidの上部のバー(タイトルバーであってる?)・・・ 邪道なんでしょうが、 public class MainActivity extends AppCompatActivity { を public class MainActivity extends Activity { に変えてやります。…