創造工学設計I 電子情報工学科4年(前期) 10回目 (25/6/2015) 担当 古山彰一 ([email protected]) Chap8_1_1とChap8_1_3には エラーがあります。 修正してください。 ※ Chap8_1_1は簡単です。 Chap8_1_3はChap8_1_6のプログラムがヒントになるかも? クリックされた回数をカウントするアプリ textView : id: @+id/textView Text: ボタンをタップした回数を数えます package jp.ac.nc_toyama.chap8_1_1; import import import import import android.support.v7.app.ActionBarActivity; android.os.Bundle; android.view.View; android.widget.Button; android.widget.TextView; public class MainActivity extends ActionBarActivity { private int i=0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ((Button) findViewById(R.id.button)).setOnClickListener( new View.OnClickListener(){ public void onClick(View view){ ((TextView) findViewById(R.id.textView)) .setText(String.format(“%d times”,++i)); } }); } } Button: id: @+id/button1 Text: Please tap! <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="${packageName}.${activityClass}"> <TextView android:text="ボタンをタップした回数を数えます。" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView" android:layout_alignParentStart="true" android:layout_alignParentEnd="true" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Please tap!" android:id="@+id/button1" android:layout_below="@+id/textView" android:layout_alignParentLeft="true" /> </RelativeLayout> ボタンにアニメーションをさせる package jp.ac.nc_toyama.chap8_1_3; import import import import import import android.support.v7.app.ActionBarActivity; android.os.Bundle; android.view.View; android.view.animation.CycleInterpolator; android.view.animation.ScaleAnimation; android.widget.Button; public class MainActivity extends ActionBarActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button Id: @+id/button Text: START! // ((Button) findViewById(R.id.button)) .setOnClickListener(new View.onClickListener(){ // @Override public void onClick(View view){ ScaleAnimation scale = new ScaleAnimation( 0.5f, 10.0f, 0.5f, 10.0f, view.getWidth()/2, view.getHeight()/2 ); // scale.setDuration(1000); // scale.setInterpolator(new CycleInterpolator(0.5f)); // view.startAnimation(scale); } }); } } <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="${packageName}.${activityClass}" android:id="@+id/"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="START!" android:id="@+id/button" android:layout_centerVertical="true" android:layout_centerHorizontal="true" /> </RelativeLayout> トーストに現在時刻を表示する package jp.ac.nc_toyama.chap8_1_6; import import import import import android.support.v7.app.ActionBarActivity; android.os.Bundle; android.view.View; android.widget.Button; android.widget.Toast; Button Id: @+id/button Text: 日付と時刻 を表示します import java.text.SimpleDateFormat; import java.util.Date; public class MainActivity extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ((Button) findViewById(R.id.button)) .setOnClickListener(new View.OnClickListener(){ public void onClick(View view){ // SimpleDateFormat sdfFormat = new SimpleDateFormat("yyyy.MM.dd '/' a hh:mm:ss"); // Date dateTime = new Date(); // Toast tstToast = Toast.makeText( getApplicationContext(), sdfFormat.format(dateTime), Toast.LENGTH_LONG); tstToast.show(); } }); } } <RelativeLayout xmlns:android= "http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="日付と時刻を表示します" android:id="@+id/button" android:layout_centerVertical="true" android:layout_centerHorizontal="true" /> </RelativeLayout> 課題について 課題1: 以下の表ではイベントリスナーとコールバックメソッドを表にしたものだが、内容の部分を記入しなさい。 課題2: Chap8_1_3の中で、 setInterpolator()メソッドを用いている が、その引数に指定できるオブジェク トとして右表のようなものがある。説明 をしなさい。また、実際にプログラムに 挿入して動作を確認しなさい。 クラス名 AccelerateInterpolator DecelerateInterpolator AccelerateDecelerateInterpolator AnticipateInterpolator AnticipateOvershootInterpolator BounceInterpolator CycleInterpolator LinearInterpolator OvershuootInterpolator 説明 課題3: 本日作成した3つのプログラムの方法を応用して、自分なりのアプリを作成しなさい。 • 課題1~3をpdfファイルにしてメールで提出しなさい。 • 締切 本日中(23:59まで) • 提出先 [email protected] • 課題ファイル名 10i4??.pdf (??は二桁の出席番号)
© Copyright 2024 ExpyDoc