読者です 読者をやめる 読者になる 読者になる

HONDAのAndroid アプリ, Web アプリ開発忘備録

このブログはHONDAがAndroidアプリの開発開始と同時に作成したもので忘備録として記しています。最近Web系に就職が決まったのでwebアプリも勉強していきます。

ボタンをおしてTextViewの内容を変える

目的 : ボタンを配置して, おすとTextViewの内容を変更する

というわけで、ボタンを配置して、ボタンを推すと、テキストが変わるようにする。

手順1 : ボタンを配置

Wigetの中のButtonをドラッグ&ドロップ

f:id:havoc0214:20150827001615p:plain

TextViewが小さかったので、設定で大きくします。

Propertyの中のtextSizeをいじる

ここで、メモとしては

単位はsp(Scale-independent Pixels).

これはフォントなどの大きさを示す単位である、らしい。

dp(Density-independent Pixels)

とかもあるらしい(これは画面の距離とかの単位らしい)

なんかいろいろ単位がある

f:id:havoc0214:20150827001822p:plain

詳しいことはここで確認↓

【Android】今さら聞けない、px、sp、dip、dpの違い

 

手順2 : idの登録

ボタン、TextViewをダブルクリックすると以下のように

表示している内容を示す"text"とこのTextViewを示すidがある。

それぞれbuttonとTextViewのidを登録しておく

僕の場合

button : myButton

TextView : myTextView

と登録した。

f:id:havoc0214:20150827002235p:plain

手順3 : buttonのメソッド登録

ボタンのプロパティに"onClick"というものがあり

クリックしたときにメソッドを呼び出すことができる.

今回はtextの中を変更するので

"changeLabel"など命名

f:id:havoc0214:20150827002901j:plainf:id:havoc0214:20150827002618p:plain

 

手順4 : MainActivity.javaの中でchangeLabelを登録

projectの中のjavaの中にMainActivity.javaがありここの中で

先ほど命名したchangeLabelの中身を書いていく

f:id:havoc0214:20150827003335p:plain

ここで、以下のソースを打つとViewクラスとTextViewクラスがインポートされていないとエラーが出るのでAlt+Enterで導入することができる。

f:id:havoc0214:20150827003456p:plain

public voidは、返り値なし(void)のメソッド

クリック→changeLabelにView型のviewという変数が入る.

中に何が入っているかわからん(True or Falseのbooleanかな?)

 

TextView tv = (TextView)findViewById(R.id.myTextView)-①

はなんか、idがmyTextViewのものを見つけるみたいな文

tv.setText("");-②

でテキストの中身を変える。

まぁ、TextViewという登録されているクラスがあって

そのメソッドにsetTextというメソッドがあるからtvはこのメソッドを使えると。

恐らく、①でTextView型のtvという名前のオブジェクトを生成していると思う。

 

そしてコンパイル

f:id:havoc0214:20150827004148p:plain

でました奥さん。

エラーですよ。

なにやら、@+idの書式で書いてねとのことらしい

 

というわけで調べました

tamohiko.hatenablog.jp

ということでid=@+id/のところを

id=@+id/mainに変更。

 

コンパイル

f:id:havoc0214:20150827004430p:plain

なにこれぇ

 

調べるとエミュレータを動かすHDDが容量不足とのことらしい

havoc0214.hatenablog.com

ええそうです。2Gしか残っていないOSのHDDが

何故か700Mになっていました。

 

さよならPython, Ruby!

ということで、色々アンインストールや消したりして、

3Gに回復。

 

コンパイル!!!!!

 

f:id:havoc0214:20150827004700p:plain

f:id:havoc0214:20150827004705p:plain

 

やれやれだぜ

f:id:havoc0214:20150827004934j:plain

まとめ 

テキストの中身をボタンで変えました