Quantcast
Channel: 質問!ITmedia 新着質問(Java/253)
Viewing all articles
Browse latest Browse all 2439

Androidアプリ開発でのLineの対応について

$
0
0
アプリを起動中にLineのメッセージポップアップが出現するとonDestroy()に入 ってしまい、データが消えてしまいます。 下記に上げたプログラムだとはじめに"test"と表示され、一回タッチするとtest2 となるプログラムですが、Lineのメッセージがくると表示が"test"に戻ってし まいます。 ご指摘お願い致します。 --------------------------------------------------------------------------------------- package com.example.test; import android.app.Activity; import android.media.AudioManager; import android.os.Bundle; import android.view.Window; import android.widget.FrameLayout; public class main extends Activity{ private View mMainView; private FrameLayout mLayout; //初期化 @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setVolumeControlStream(AudioManager.STREAM_MUSIC); requestWindowFeature(Window.FEATURE_NO_TITLE); mMainView = new View(this); mLayout = new FrameLayout(this); mLayout.addView(mMainView); setContentView(mLayout); } @Override public void onStart() { super.onStart(); } @Override public void onRestart() { super.onRestart(); } @Override public void onResume() { super.onResume(); } @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); } @Override public void onPause() { super.onPause(); } @Override public void onStop() { super.onStop(); } @Override public void onDestroy() { super.onDestroy(); } } ------------------------------------------------------------------------------------------ package com.example.test; import android.app.Activity; import android.content.*; import android.content.pm.ActivityInfo; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.view.*; public class View extends SurfaceView implements SurfaceHolder.Callback,Runnable { //システム public int scene; //シーン private SurfaceHolder holder; private Thread thread; private Context context; //コンストラクタ public View(Context context2) { super(context2); context = context2; scene = 0; //初期化 //グラフィックスの生成 holder = getHolder(); holder.addCallback(this); ((Activity) context).setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT ); //スクリーン固定 } //サーフェイスの生成 public void surfaceCreated(SurfaceHolder holder) { thread = new Thread(this); thread.start(); } //サーフェイスの終了 public void surfaceDestroyed(SurfaceHolder holder) { thread = null; } //サーフェイスの変更 public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) { } //スレッドの処理 public void run() { Paint paint = new Paint(); Canvas canvas; paint.setColor(Color.WHITE); paint.setTextSize(60); while (this.thread!=null) { try { canvas = holder.lockCanvas(); if (this.scene==0) canvas.drawText("test", 100, 100, paint); else canvas.drawText("test2", 100, 100, paint); holder.unlockCanvasAndPost(canvas); } catch(Exception e) {} } } //タッチイベントの処理 @Override public boolean onTouchEvent(MotionEvent event) { this.scene = 1; return true; } }

Viewing all articles
Browse latest Browse all 2439

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>