9. 基本動き(稼働⇔スリープ)

Tapia
画面をタップして、稼働モードとスリープモードを切り替えます

◆◇◆◇◆サンプルコード:TAPIAの顔を長押して、稼働モードとスリープモードを切り替える◆◇◆◇◆

1) ボタンを追加する

サンプルコード「0.ボタンを追加する」を参考に作成します

2) Activitynに以下処理を追加する

//■□■稼働モードとスリープモードを切り替える■□■
public class Mode1Activity extends TapiaActivity {
    TapiaAnimation tapiaAnimation;
    boolean isModeF = true;

    @Override
    protected void onCreate(final Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.eyes_layout);
        ImageView tapiaEyes = (ImageView) findViewById(R.id.eyes);

        //タピアの表情を笑顔に設定する
       tapiaAnimation = new TapiaAnimation(this,tapiaEyes);
       tapiaAnimation.startAnimation(TapiaAnimation.SMILING ,true);

        //言語を日本語にする
        TapiaApp.setCurrentLanguage(Language.LanguageID.JAPANESE);
        //タピアにテキストを言葉で話をさせるためTapiaActivity.ttsProviderのインスタンスを取得する
        ttsProvider = TapiaApp.currentLanguage.getTTSProvider();

        //タピアの顔を長押して、稼働モードとお休みモードを切り替える
        tapiaEyes.setOnLongClickListener(new View.OnLongClickListener() {
           @Override
            public boolean onLongClick(View v) {

	 //タピアが「おやすみ」と言って眠る
               if (isModeF==true){
                   tapiaAnimation.startAnimation(TapiaAnimation.EXHAUSTED ,true);//タピアが眠る
                   TapiaRobot.rotate(activity, TapiaRobot.RotateOrientation.DOWN,15 ,null) ;//下を向く
                   try {
                       ttsProvider.say(getString(R.string.alarm_good_night0));//おやすみと言う
                   } catch (LanguageNotSupportedException e) {
                       e.printStackTrace();
                   }
                   isModeF=false;

	//タピアが「おはよう」と言って起きる
               }else{	
                   tapiaAnimation.startAnimation(TapiaAnimation.PLAIN ,true);//タピアが目をパチパチする
                   TapiaRobot.rotate(activity, TapiaRobot.RotateOrientation.UP,15 ,null) ;//上を向く
                   try {
                       ttsProvider.say(getString(R.string.alarm_good_morning0));//おはようと言う
                   } catch (LanguageNotSupportedException e) {
                       e.printStackTrace();
                   }
                   isModeF=true;
               }
                return false;
            }
        }); 
    }

    @Override
    protected void onResume() {
        super.onResume();
    }

    @Override
    protected void onPause() {
        super.onPause();
    }
}
            

© 2018 - MJI Inc. Copyright reserved -