私は電気回路に接続された別のSIMにSMSを送信するアンドロイドアプリを作成しています。受信SIMが特定のテキストのメッセージを受信すると、電気回路が閉じられ、モータが動作を開始します。ここではプログラムクラスがリロードされるのはなぜですか?
public class SendSMSActivity extends Activity implements View.OnClickListener{
ImageView image1;
Button turnon;
/** Called when the activity is first created. */
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
turnon = (Button) findViewById(R.id.button1);
image1 = (ImageView) findViewById(R.id.image1);
turnon.setOnClickListener(this);
}
public void onClick(View v)
{
String phoneNo = "XXXXXXXXXX";
String message = "Turn On";
if (phoneNo.length()>0 && message.length()>0)
{
sendSMS(phoneNo, message);
image1.setImageResource(R.drawable.greenon);
}
else{
Toast.makeText(getBaseContext(),
"Phone Number and Message not configured correctly.",
Toast.LENGTH_SHORT).show();
image1.setImageResource(R.drawable.redon);
}
}
protected void sendSMS(String phoneNo, String message) {
// TODO Auto-generated method stub
PendingIntent pi = PendingIntent.getActivity(this, 0,
new Intent(this, SendSMSActivity.class), 0);
SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(phoneNo, null, message, pi, null);
}
}
がある私が持っている問題は、画像をクリックした後、画面上に来た後、それが画面上に滞在していないということです。代わりにクラスがリロードされ、イメージは元のイメージにリセットされます。どのようにして元の画像に戻すことなく、画像をスクリーン上に残すことができますか?