[!] テキスト通り入力したはずなのですが、出力がテキスト通りにならないという問題です。
###Info:
- こちらのテキストのChapter4,4-2-4「独自のViewを利用してみよう」(p.102-)を見ながら作っています。
- 自分で作ったMyViewクラスに書かれた内容をActivityMain.javaで反映されるようにできたら成功?
- MyView.javaはMainActivity.javaと同じディレクトリにあります。
- IDEはAIDEです。PCないのでこれでやっています。
- そもそもプログラミング初心者
###State:
- エラーは出ませんが,出力結果がテキスト通りになりません。(T~T)
- テキストではコメントアウトによって,事前に設置していたボタン等が表示されなくなるようですが,
実際に動かしてみると,背景色が変わらないだけでなく,ボタン等もそのまま残ってしまっています.
- こんな感じで画面いっぱいに色がつくはずなのに
- 全く反映されてません.
###Code:
- ActivityMain.java
java
1package com.mycompany.myapp; 2 3//import android.support.v7.app.ActionBarActivity; 4import android.app.*; 5import android.os.Bundle; 6import android.view.Menu; 7import android.view.MenuItem; 8import android.view.View; 9import android.widget.Button; 10import android.media.MediaPlayer; 11//import android.util.Log; 12 13 14public class ActivityMain extends Activity { 15 //MediaPlayer mPlayer;//追加 16 17 @Override 18 protected void onCreate(Bundle savedInstanceState) 19 { 20 super.onCreate(savedInstanceState); 21 22 MyView v = new MyView(this); 23 setContentView(v); 24 25 /* 26 setContentView(R.layout.activity_main); 27 28 Button btn = (Button) findViewById(R.id.button1); 29 //btn.setText("Hello"); 30 mPlayer = MediaPlayer.create(this, R.raw.hitosuji_no_hikari);//追加① 31 btn.setOnClickListener(new View.OnClickListener() { 32 @Override 33 public void onClick(View arg0) { 34 Button btn = (Button) arg0; 35 btn.setText("こんにちは"); 36 mPlayer.start();//追加② 37 } 38 }); 39 */ 40 } 41 42 @Override 43 protected void onPause(){ 44 super.onPause(); 45 //mPlayer.stop(); 46 //Log.d("TAG","onPause run"); 47 } 48 49 50 //@Override 51 //public boolean onCreateOptionsMenu(Menu menu){ 52 // 53 //} 54}
- MyView.java
java
1package com.mycompany.myapp; 2 3import android.content.Context; 4import android.view.View; 5import android.graphics.Canvas; 6import android.graphics.Color; 7 8 9public class MyView extends View { 10 11 public MyView(Context context) { 12 super(context); 13 } 14 15 @Override 16 protected void onDraw(Canvas canvas) { 17 super.onDraw(canvas); 18 canvas.drawColor(Color.argb(255, 80, 116, 62) ); 19 } 20}
###Needs:
- どんなファイルにどんなコードが要るのか。
(e.g. メイン画面の見た目を定義したXMLファイルのTextViewに「android:text="Hello"」を追記。)
- できれば、どうしてそれが要るのかも解説してもらえるとありがたいです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/08 14:34 編集
2016/11/09 00:06