Taro-twokansu3.jtd

Similar documents
Taro-korattsu.jtd

2 // TODO Auto-generated method stub float x = event.getx(); float y = event.gety(); String action = ""; switch(event.getaction()) { case MotionEvent.

< F2D82518E9F8AD CC834F CC8CFC82AB82C68D4C>

「Android Studioではじめる 簡単Androidアプリ開発」正誤表

< F2D82518E9F8AD CC95BD8D7388DA93AE2E6A7464>

ファイルを直接編集する画面を切り替えることができる. 図 3 標準のレイアウトを削除する (2) グラフィカル レイアウト画面で LinearLayout(Vertical) を追加するパレットウィンドウの レイアウト の中にある LinearLayout(Vertical) をドラッグして, 編集

< F2D F B834E2E6A7464>

android2.indd

玉転がしタブレット端末の特徴の一つとして, センサを使った動作や, 指による画面操作がある. それらを活用して, 図形を動かすアプリの例を示す. 1. プロジェクトを作る Tama アプリケーションを作る,Tama プロジェクトを作る. 図 1 プロジェクト作成 プロジェクトの構成を設定する. 図

日 用 用 面 示 用 用 方

Prog2_9th

Microsoft Word - A05_AndroidプログラミングJUMP_画面800×1280

補足資料 キーイベント処理サンプル package jp.co.keyevent; import android.app.activity; import android.os.bundle; import android.view.keyevent; import android.widget.t

MasterDetailFlow SettingsActivity 2. Android Lint Checks 以前のバージョンよりコンパイルのチェックが厳しくなりました このような厳しいチェックを Android Lint Checks と言います Abdroid プログラミング Bible で

< F2D B838A835882CC8CF68EAE2E6A7464>

< F2D834F838C A815B A CC>

< F2D E E6A7464>

教材ドットコムオリジナル教材 0から始めるiアフ リ リファレンス i アプリ簡易リファレンス ver i アプリ Java 独自のメソッド (1)iアプリの命令を使えるようにする import com.nttdocomo.ui.*; (2) 乱数を使う import java.u

そして 取得した OutputStream インスタンスを使い 文字コードは UTF-8 として PrintWriter インスタンスを生成して あとは PrintWriter.append() で書き込みたい文字 列を渡して close() で保存する というだけです ファイルの読込み方法 それで

Android osの歴史 1.6から2.3まで携帯のみ 3.0 タブレットのみ 4.0 タブレットで培ったUIなど の技術を携帯でも 使えるとうにと APIなんかが統合された

< F2D A839382CC906A2E6A7464>

非推奨メソッド等の掲載について

/03/26 2

Microsoft Word - Android_SQLite講座_画面800×1280

のようにする 上の例では GeneralPath を new するときに コンストラクタに何も指定していないが 直線を表す Line, 四角形を表す Rectangle などを引数に与えてもよい 矢印を作成するメソッドの引数矢印を表す GeneralPath を生成するために getarrowpat

補足資料 インテントによるアプリケーションとアクティビティの呼出し Android アプリのキモとなるインテントとは何? インテント ( 呼び出し要求 ) とは Android 独自の機能です 簡単にいえばアプリケーションや他のアクティビティを呼び出す機能ですが 他のアプリケーションを機能や扱えるデ

< F2D82B682E182F182AF82F12E6A7464>

Javaプログラムの実行手順

< F2D89BA8EE882C E6A7464>

< F2D A838B838D96402E6A7464>

< F2D82518CC282CC D2E6A7464>

< F2D B825082CC96E291E82E6A7464>


Android PC OS Linux Android AndroidJava XML Android ipone ipad ipone VS Android ipone OS ios Objective-C Android Java Objective-C Java Java Android An


< F2D92DE82E8914B82CC977088D32E6A7464>

HCI プログラミング 5 回目ウィンドウに画像を表示してみよう 今日の講義で学ぶ内容 画像の表示 画像のエフェクト 画像のビューポート指定 画像の表示 1 画像を表示してみましょう 画像の表示はクラス ImageView により管理されます ソースファイル名 :Sample5_1.java //

WiFiによる位置情報サービスとスマートフォンによる実装

手書認識 グラフ描画 Step2-2 手書認識 : 認識結果を PaintPanel で描画する < 属性付き文字列 AttributedString> 標準出力では分かりにくいうえに認識結果を使えないので 認識するごとに PaintPanel に文字を描画することにする ここで 数式はただの文字列

日 力力 生 行行 入 入 力力 生 用 方

mazec テクニカルガイド第5版(Android版)

Microsoft Word - Android_DI講座_画面800×1280

例題 3-2 ボタンをクリックしたらタイトルバーにテキストを表示します activity_main.xml <LinearLayout xmlns:android=" android:layout_height="

Java演習(4) -- 変数と型 --

2-2. TableLayout TableLayout は任意のビューを表形式で配置したい場合に利用する (HTML の Table に近いイメー ジ ) 2-3. FrameLayout ビューを重ねて表示するためのレイアウト 後から配置した部品が前面に来る仕様となっている 3. まとめ レイア

JavaプログラミングⅠ

Microsoft Word - A04_AndroidプログラミングSTEP_画面800×1280

Another Activity オブジェクトは生成されてもいないのである これは 後述の onpause メソッ ドの説明からも明らかである 翻訳 : A の onpause から返ってこない限り B は create されない ため ここで長い処理は行ってはならない 実際にトレースをおこなってみ

< F2D BCA82CC978E89BA82CC8EC08CB12E6A7464>

1: Android 2 Android 2.1 Android 4 Activity Android Service ContentProvider BroadcastReceiver Activity ( ): Android 1 Android Service ( ): ContentProv

< F2D825282CC947B909482CC A815B83682E6A>

GUIプログラムⅣ

Microsoft Word - Android_DI講座_画面800×1280

Chapter 2 センサー機能と描画機能 [ カラーボールゲームアプリ ] 2-2 センサー機能について 2-1 アプリケーションの概要 2-2 センサー機能について 0 本章で使用するサンプルアプリは カラーボールゲームアプリ です まずここではアプリの概要について解説します なお 本章で扱う加

JavaプログラミングⅠ

グラフの探索 JAVA での実装

やさしいJavaプログラミング -Great Ideas for Java Programming サンプルPDF

Prog2_5th

Hello, Android

< F2D8EA CE909482CC92EA82852E6A7464>

Microsoft PowerPoint - lec06 [互換モード]

JAVA入門

スライド 1

新・明解Java入門

android2.indd

Prog2_2nd

Java プログラミング Ⅰ 3 回目変 数 今日の講義講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能 変数は 型 ( データ型 ) と識別子をもちます 2 型 ( データ型 ) 変数に記憶する値の種類変数の型は 記憶できる値の種類と範囲

10K

1: Preference Display 1 package sample. pref ; 2 3 import android. app. Activity ; 4 import android. content. Intent ; 5 import android. content. Shar

Microsoft PowerPoint ppt

問 次の Fortran プログラムの説明及びプログラムを読んで、設問に答えよ。

<4D F736F F F696E74202D AC C8899E D834F E >

Prog2_10th

教材ドットコムオリジナル教材 0から始めるiアプリ (4) 0 から始める i アプリ (4) i アプリをプログラミングする際に必要なのは Java というプログラミング言語の基礎知識です 独自の命令や駆使してプログラミングをするわけですが Java というベースになっている言語を知らないでプログ

Java講座

Microsoft Word - _Intent.doc

Donut Cupcake 非 公 開 非 公 開 2. Android4.0 の 留 意 事 項 2-1 Menu キーの 扱 い 端 末 下 部 の Menu Home Back の 各 ハードキーが ディスプレー 上

Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文

Quick Sort 計算機アルゴリズム特論 :2017 年度 只木進一

r3.dvi

JavaプログラミングⅠ

IT プロジェクト

シミュレーションの簡単な例 GUI 無しのシミュレーションを作る GUI を作る パラメタを設定するデモンストレーションをする 2 オブジェクト指向プログラミング特論

ToDo: 今回のタイトル

5 p Point int Java p Point Point p; p = new Point(); Point instance, p Point int 2 Point Point p = new Point(); p.x = 1; p.y = 2;

2.2 Java C main Java main 2 C 6 C Java 3 C Java ( ) G101Hello.java G101Hello main G101Hello.java /* G101Hello */ class G101Hello { /* main */ public s

Prog2_10th

Microsoft Word - Android_SQLite講座_画面800×1280

Cir

3 Java 3.1 Hello World! Hello World public class HelloWorld { public static void main(string[] args) { System.out.println("Hello World");

Exam : 1z1-809-JPN Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z1-809-JPN Exam's Question and Answers 1 from Ac

任意の加算プログラム

SpringSecurity

Microsoft PowerPoint - OOP.pptx

テーブルの確認 sqlite>.tables.tables コマンドでデータベース内のテーブル一覧を表示する テーブルスキーマの表示 sqlite>.schema mytable.schema コマンドで指定のテーブルのスキーマを表示できる テーブル出力の整形.explain コマンドを使うと テー

Prog2_12th

About me! 足立昌彦 / +Masahiko.Adachi )! バイドゥ株式会社技術顧問 (Simeji)! 株式会社カブク Co-Founder! Google Developer Expert (Android)

PowerPoint プレゼンテーション

プログラミング入門1

問題1 以下に示すプログラムは、次の処理をするプログラムである

Transcription:

//------------------------------------------------ // // 2 次関数のグラフの広がり // y=ax^2 のグラフ // Ver3 // Copyright(C) K.Niwa 2014.08.09 // //------------------------------------------------ NO.33 エミュレータ画面例 [ アプリの概要 ] 2 次関数 y=ax^2 のグラフの広がりは a>0 のときaの値が大きくなるにつれて狭くなり a<0 のときaの値が小さくなるにつれて スマートフォン画面例 狭くなることを観察してみよう ( Android 4.0) [1]Twokansu3.java package jp.seitoku.twokansu3; import android.content.context; import android.graphics.*; import android.util.attributeset; import android.view.*; // パッケージを指定 // ライブラリを読み込む public class Twokansu3 extends View { //View クラスを継承した Twokan1 クラス int flag=0; // グラフの移動 (1) グラフの停止(2) グラフの初期化(0) 初期化識別子 double x,; y // グラフ描写に利用 int px, py, oldpx, oldpy; // グラフ描写に利用 int fg; // グラフ描写に利用 double a=0, b=0; // グラフ描写に利用 public Twokansu3(Context context, AttributeSet attrs, int defstyle) { ス名と同じメソッドで最初に読まれる ) super(context, attrs, defstyle); // コンストラクタ ( クラ public Twokansu3(Context context, AttributeSet attrs) { ドで最初に読まれる ) super(context, attrs); // コンストラクタ ( クラス名と同じメソッ る ) public Twokansu3(Context context) { super(contex // コンストラクタ ( クラス名と同じメソッドで最初に読まれ -1-

//ondrawメソッド---------------------------------------------------------------------------- @Override protected void ondraw(canvas canvas) { super.ondraw(canvas); canvas.drawcolor(color. WHITE); Paint paint = new Paint(); paint.setalpha(50); canvas.drawrect((getwidth()/2-240)+10,(getheight()/2-343)+10,(getwidth()/2-240)+470,(geth eight()/2-343)+675,pai paint.setalpha(10000); for ( int i=0;i<2;i++) { // 額縁を付ける canvas.drawline((getwidth()/2-240)+10+i,(getheight()/2-343)+10+i,(getwidth()/2-24 0)+10+i,(getHeight()/2-343)+675-i,pai canvas.drawline((getwidth()/2-240)+10+i,(getheight()/2-343)+675-i,(getwidth()/2-2 40)+470-i,(getHeight()/2-343)+675-i,pai canvas.drawline((getwidth()/2-240)+470-i,(getheight()/2-343)+675-i,(getwidth()/2-240)+470-i,(getheight()/2-343)+10+i,pai canvas.drawline((getwidth()/2-240)+470-i,(getheight()/2-343)+10+i,(getwidth()/2-2 40)+10+i,(getHeight()/2-343)+10+i,pai // 実験枠の描画 canvas.drawrect((getwidth()/2-240)+90, (getheight()/2-343)+100,(getwidth()/2-240)+390,(ge theight()/2-343)+400,pai paint.setcolor(color. WHITE); canvas.drawrect((getwidth()/2-240)+91, (getheight()/2-343)+101,(getwidth()/2-240)+389,(ge theight()/2-343)+399,pai // 座標軸の描画 canvas.drawline((getwidth()/2-240)+100, (getheight()/2-343)+250,(getwidth()/2-240)+380,(g etheight()/2-343)+250,pai canvas.drawline((getwidth()/2-240)+380, (getheight()/2-343)+250,(getwidth()/2-240)+380-5, (getheight()/2-343)+250-5,pai canvas.drawline((getwidth()/2-240)+380, (getheight()/2-343)+250,(getwidth()/2-240)+380-5, (getheight()/2-343)+250+5,pai canvas.drawline((getwidth()/2-240)+240, (getheight()/2-343)+110,(getwidth()/2-240)+240,(g etheight()/2-343)+390,pai canvas.drawline((getwidth()/2-240)+240, (getheight()/2-343)+110,(getwidth()/2-240)+240+5, (getheight()/2-343)+110+5,pai canvas.drawline((getwidth()/2-240)+240, (getheight()/2-343)+110,(getwidth()/2-240)+240-5, (getheight()/2-343)+110+5,pai for ( int xx=120;xx<=360;xx=xx+30) { //x 軸メモリの描写 canvas.drawline((getwidth()/2-240)+xx, (getheight()/2-343)+250-3,(getwidth()/2-24 0)+xx,(getHeight()/2-343)+250+3,pai for ( int yy=130;yy<=370;yy=yy+20) { //y 軸メモリの描写 canvas.drawline((getwidth()/2-240)+240-3, (getheight()/2-343)+yy,(getwidth()/2-24 0)+240+3,(getHeight()/2-343)+yy,pai //x 軸メモリの描写 canvas.drawtext( "1", (getwidth()/2-240)+270-3, (getheight()/2-343)+260+5, pai canvas.drawtext( "2", (getwidth()/2-240)+300-3, (getheight()/2-343)+260+5, pai canvas.drawtext( "3", (getwidth()/2-240)+330-3, (getheight()/2-343)+260+5, pai canvas.drawtext( "4", (getwidth()/2-240)+360-3, (getheight()/2-343)+260+5, pai canvas.drawtext( "x", (getwidth()/2-240)+375, (getheight()/2-343)+260+5, pai canvas.drawtext( "O", (getwidth()/2-240)+230-3, (getheight()/2-343)+260+2, pai canvas.drawtext( "-1", (getwidth()/2-240)+210-6, (getheight()/2-343)+260+5, pai canvas.drawtext( "-2", (getwidth()/2-240)+180-6, (getheight()/2-343)+260+5, pai canvas.drawtext( "-3", (getwidth()/2-240)+150-6, (getheight()/2-343)+260+5, pai canvas.drawtext( "-4", (getwidth()/2-240)+120-6, (getheight()/2-343)+260+5, pai -2-

//y 軸メモリの描写 canvas.drawtext( "60", (getwidth()/2-240)+220, (getheight()/2-343)+130+5, pai canvas.drawtext( "50", (getwidth()/2-240)+220, (getheight()/2-343)+150+5, pai canvas.drawtext( "40", (getwidth()/2-240)+220, (getheight()/2-343)+170+5, pai canvas.drawtext( "30", (getwidth()/2-240)+220, (getheight()/2-343)+190+5, pai canvas.drawtext( "20", (getwidth()/2-240)+220, (getheight()/2-343)+210+5, pai canvas.drawtext( "10", (getwidth()/2-240)+220, (getheight()/2-343)+230+5, pai canvas.drawtext( "y", (getwidth()/2-240)+220, (getheight()/2-343)+110+5, pai canvas.drawtext( "-10", (getwidth()/2-240)+220-5, (getheight()/2-343)+270+5, pai canvas.drawtext( "-20", (getwidth()/2-240)+220-5, (getheight()/2-343)+290+5, pai canvas.drawtext( "-30", (getwidth()/2-240)+220-5, (getheight()/2-343)+310+5, pai canvas.drawtext( "-40", (getwidth()/2-240)+220-5, (getheight()/2-343)+330+5, pai canvas.drawtext( "-50", (getwidth()/2-240)+220-5, (getheight()/2-343)+350+5, pai canvas.drawtext( "-60", (getwidth()/2-240)+220-5, (getheight()/2-343)+370+5, pai // 実験枠の描画 canvas.drawline((getwidth()/2-240)+90, (getheight()/2-343)+100,(getwidth()/2-240)+90,(get Height()/2-343)+400,pai canvas.drawline((getwidth()/2-240)+90, (getheight()/2-343)+100,(getwidth()/2-240)+390,(ge theight()/2-343)+100,pai // 表題の表示 paint.settextsize(25.0f); canvas.drawtext( "", (getwidth()/2-240)+60, (getheight()/2-343)+65, pai canvas.drawtext( " 2 次関数のグラフの広がり ", (getwidth()/2-240)+60+30-24, (getheight() /2-343)+65, pai //canvas.drawtext("2", (getwidth()/2-240)+170, (getheight()/2-343)+50, pai // 目標の提示 paint.settextsize(19.0f); canvas.drawtext( "a>0のとき y=ax のク ラフの広がりは ", (getwidth()/2-240)+30+18, (g etheight()/2-343)+440, pai canvas.drawtext( "2", (getwidth()/2-240)+255, (getheight()/2-343)+440-5-5, pai canvas.drawtext( "aの値が大きくなるにつれて狭くなる ", (getwidth()/2-240)+30, (getheight ()/2-343)+465, pai canvas.drawtext( "a<0のときは aの値が小さくなるにつれ ", (getwidth()/2-240)+30+18, (ge theight()/2-343)+490, pai canvas.drawtext( " て狭くなる これらのことを観察してみよう ", (getwidth()/2-240)+30, (get Height()/2-343)+515, pai // 説明の表示 paint.settextsize(19.0f); canvas.drawtext( " 画面タッチで y=x のク ラフを描きます ", (getwidth()/2-240)+50-20, (g etheight()/2-343)+550-5, pai canvas.drawtext( "2", (getwidth()/2-240)+290-60+10, (getheight()/2-343)+545-5, pai canvas.drawtext( " 画面をタッチするごとに順次ク ラフを描きます ", (getwidth()/2-240)+50-20, (getheight()/2-343)+575-5, pai canvas.drawtext( " 6 回目と12 回目のタッチで初期化されます ", (getwidth()/2-240)+50-20, (g etheight()/2-343)+600-5, pai canvas.drawtext( " 画面が暗くなったらステータスバーをタッチ!", (getwidth()/2-240)+50-2 0, (getheight()/2-343)+625-5, pai paint.settextsize(19.0f); canvas.drawtext( "Copyright(C) K.Niwa 2014.08", (getwidth()/2-240)+110, (getheight()/2-34 3)+650, pai // 作者 作成年月の表示 paint.settextsize(12.0f); 10, pai if ( flag==1) { //y=x^2 のグラフの描画 canvas.drawtext( "y=x ", (getwidth()/2-240)+300-20+50, (getheight()/2-343)+230+ canvas.drawtext( "2", (getwidth()/2-240)+315+50, (getheight()/2-343)+230-5+10, pai -3-

yxx =*; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai else if ( flag==2) { //y=x^2 のグラフの描画 canvas.drawtext( "y=x ", (getwidth()/2-240)+330, (getheight()/2-343)+240, pain canvas.drawtext( "2", (getwidth()/2-240)+365, (getheight()/2-343)+235, pai yxx =*; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=2x^2 のグラフの描画 canvas.drawtext( "y=2x ", (getwidth()/2-240)+270, (getheight()/2-343)+220, pain canvas.drawtext( "2", (getwidth()/2-240)+313, (getheight()/2-343)+215, pai y=2* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai -4-

else if ( flag==3) { //y=x^2 のグラフの描画 canvas.drawtext( "y=x ", (getwidth()/2-240)+330, (getheight()/2-343)+240, pain canvas.drawtext( "2", (getwidth()/2-240)+365, (getheight()/2-343)+235, pai yxx =*; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=2x^2 のグラフの描画 canvas.drawtext( "y=2x ", (getwidth()/2-240)+270, (getheight()/2-343)+220, pain canvas.drawtext( "2", (getwidth()/2-240)+313, (getheight()/2-343)+215, pai y=2* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=3x^2 のグラフの描画 canvas.drawtext( "y=3x ", (getwidth()/2-240)+280, (getheight()/2-343)+190, pain canvas.drawtext( "2", (getwidth()/2-240)+323, (getheight()/2-343)+185, pai for ( x=-4.3; x<=4.4; x= x+0.1) { y=3* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai -5-

else if ( flag==4) { //y=x^2 のグラフの描画 canvas.drawtext( "y=x ", (getwidth()/2-240)+330, (getheight()/2-343)+240, pain canvas.drawtext( "2", (getwidth()/2-240)+365, (getheight()/2-343)+235, pai yxx =*; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=2x^2 のグラフの描画 canvas.drawtext( "y=2x ", (getwidth()/2-240)+270, (getheight()/2-343)+220, pain canvas.drawtext( "2", (getwidth()/2-240)+313, (getheight()/2-343)+215, pai y=2* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=3x^2 のグラフの描画 canvas.drawtext( "y=3x ", (getwidth()/2-240)+280, (getheight()/2-343)+190, pain canvas.drawtext( "2", (getwidth()/2-240)+323, (getheight()/2-343)+185, pai for ( x=-4.3; x<=4.4; x= x+0.1) { y=3* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai -6-

//y=4x^2 のグラフの描画 paint.setcolor(color. MAGENTA); canvas.drawtext( "y=4x ", (getwidth()/2-240)+280, (getheight()/2-343)+160, pain canvas.drawtext( "2", (getwidth()/2-240)+323, (getheight()/2-343)+155, pai for ( x=-4.0; x<=4.1; x= x+0.1) { y=4* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai else if ( flag==5) { //y=x^2 のグラフの描画 canvas.drawtext( "y=x ", (getwidth()/2-240)+330, (getheight()/2-343)+240, pain canvas.drawtext( "2", (getwidth()/2-240)+365, (getheight()/2-343)+235, pai yxx =*; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=2x^2 のグラフの描画 canvas.drawtext( "y=2x ", (getwidth()/2-240)+270, (getheight()/2-343)+220, pain canvas.drawtext( "2", (getwidth()/2-240)+313, (getheight()/2-343)+215, pai y=2* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai -7-

//y=3x^2 のグラフの描画 canvas.drawtext( "y=3x ", (getwidth()/2-240)+280, (getheight()/2-343)+190, pain canvas.drawtext( "2", (getwidth()/2-240)+323, (getheight()/2-343)+185, pai for ( x=-4.3; x<=4.4; x= x+0.1) { y=3* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=4x^2 のグラフの描画 paint.setcolor(color. MAGENTA); canvas.drawtext( "y=4x ", (getwidth()/2-240)+280, (getheight()/2-343)+160, pain canvas.drawtext( "2", (getwidth()/2-240)+323, (getheight()/2-343)+155, pai for ( x=-4.0; x<=4.1; x= x+0.1) { y=4* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=5x^2 のグラフの描画 paint.setcolor(color. CYAN); canvas.drawtext( "y=5x ", (getwidth()/2-240)+290, (getheight()/2-343)+130, pain canvas.drawtext( "2", (getwidth()/2-240)+333, (getheight()/2-343)+125, pai for ( x=-3.7; x<=3.8; x= x+0.1) { y=5* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai -8-

else if ( flag==6) { if ( flag==7) { //y=-x^2 のグラフの描画 canvas.drawtext( "y=-x ", (getwidth()/2-240)+280, (getheight()/2-343)+280, pain canvas.drawtext( "2", (getwidth()/2-240)+320, (getheight()/2-343)+275, pai y=-1* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai else if ( flag==8) { //y=-x^2 のグラフの描画 canvas.drawtext( "y=-x ", (getwidth()/2-240)+280, (getheight()/2-343)+280, pain canvas.drawtext( "2", (getwidth()/2-240)+320, (getheight()/2-343)+275, pai y=-1* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=-2x^2 のグラフの描画 canvas.drawtext( "y=-2x ", (getwidth()/2-240)+285, (getheight()/2-343)+310, pai canvas.drawtext( "2", (getwidth()/2-240)+332, (getheight()/2-343)+305, pai y=-2* x* x; py=( int)(250-2* y); -9-

343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai else if ( flag==9) { //y=-x^2 のグラフの描画 canvas.drawtext( "y=-x ", (getwidth()/2-240)+280, (getheight()/2-343)+280, pain canvas.drawtext( "2", (getwidth()/2-240)+320, (getheight()/2-343)+275, pai y=-1* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=-2x^2 のグラフの描画 canvas.drawtext( "y=-2x ", (getwidth()/2-240)+285, (getheight()/2-343)+310, pai canvas.drawtext( "2", (getwidth()/2-240)+332, (getheight()/2-343)+305, pai y=-2* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=-3x^2 のグラフの描画 canvas.drawtext( "y=-3x ", (getwidth()/2-240)+285, (getheight()/2-343)+340, pai canvas.drawtext( "2", (getwidth()/2-240)+332, (getheight()/2-343)+335, pai for ( x=-4.3; x<=4.4; x= x+0.1) { -10-

y=-3* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai else if ( flag==10) { //y=-x^2 のグラフの描画 canvas.drawtext( "y=-x ", (getwidth()/2-240)+280, (getheight()/2-343)+280, pain canvas.drawtext( "2", (getwidth()/2-240)+320, (getheight()/2-343)+275, pai y=-1* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=-2x^2 のグラフの描画 canvas.drawtext( "y=-2x ", (getwidth()/2-240)+285, (getheight()/2-343)+310, pai canvas.drawtext( "2", (getwidth()/2-240)+332, (getheight()/2-343)+305, pai y=-2* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=-3x^2 のグラフの描画 canvas.drawtext( "y=-3x ", (getwidth()/2-240)+285, (getheight()/2-343)+340, pai -11-

canvas.drawtext( "2", (getwidth()/2-240)+332, (getheight()/2-343)+335, pai for ( x=-4.3; x<=4.4; x= x+0.1) { y=-3* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=-4x^2 のグラフの描画 paint.setcolor(color. MAGENTA); canvas.drawtext( "y=-4x ", (getwidth()/2-240)+285, (getheight()/2-343)+370, pai canvas.drawtext( "2", (getwidth()/2-240)+332, (getheight()/2-343)+365, pai for ( x=-4.0; x<=4.1; x= x+0.1) { y=-4* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai else if ( flag==11) { //y=-x^2 のグラフの描画 canvas.drawtext( "y=-x ", (getwidth()/2-240)+280, (getheight()/2-343)+280, pain canvas.drawtext( "2", (getwidth()/2-240)+320, (getheight()/2-343)+275, pai y=-1* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=-2x^2 のグラフの描画 -12-

canvas.drawtext( "y=-2x ", (getwidth()/2-240)+285, (getheight()/2-343)+310, pai canvas.drawtext( "2", (getwidth()/2-240)+332, (getheight()/2-343)+305, pai y=-2* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=-3x^2 のグラフの描画 canvas.drawtext( "y=-3x ", (getwidth()/2-240)+285, (getheight()/2-343)+340, pai canvas.drawtext( "2", (getwidth()/2-240)+332, (getheight()/2-343)+335, pai for ( x=-4.3; x<=4.4; x= x+0.1) { y=-3* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=-4x^2 のグラフの描画 paint.setcolor(color. MAGENTA); canvas.drawtext( "y=-4x ", (getwidth()/2-240)+285, (getheight()/2-343)+370, pai canvas.drawtext( "2", (getwidth()/2-240)+332, (getheight()/2-343)+365, pai for ( x=-4.0; x<=4.1; x= x+0.1) { y=-4* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai //y=-5x^2 のグラフの描画 paint.setcolor(color. CYAN); canvas.drawtext( "y=-5x ", (getwidth()/2-240)+285, (getheight()/2-343)+390, pai -13-

canvas.drawtext( "2", (getwidth()/2-240)+332, (getheight()/2-343)+385, pai for ( x=-3.7; x<=3.8; x= x+0.1) { y=-5* x* x; 343)+ py,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai /2-343)+ oldpy,( int)(getwidth()/2-240)+ px,( int)(getheight()/2-343)+ py,pai else if ( flag==0) { //a=0; // 初期化する //b=0; // 初期化する //invalidate(); // 再描画する (clear & goto ondraw) そして この行へ戻ってくる //protected void ondraw(canvas canvas) // 画面にタッチしたときのイベント処理 ---------------------------------------------------------------------- ----------- @Override public boolean ontouchevent(motionevent event) { flag= flag+1; //flagに1を加える flag= flag % 12; //flagに1 2 10 11 0 を代入する invalidate(); return false; // 再描画する (clear & goto ondraw) [2]main.xml <? xml version= "1.0" encoding= "utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:weightsum="1" > <jp.seitoku.twokansu3.twokansu3 android:layout_height="match_parent" android:layout_width="match_parent" android:id="@+id/myview1"> </ jp.seitoku.twokansu3.twokansu3> </ LinearLayout> [3]Twokansu3Activity.java package jp.seitoku.twokansu3; -14-

import import import android.os.bundle; android.app.activity; android.view.menu; public class Twokansu3Activity extends Activity { @Override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout. main); @Override public boolean oncreateoptionsmenu(menu menu) { getmenuinflater().inflate(r.menu. main, menu); return true; -15-