Blog / 阅读

Activity基类广播退出APP

by admin on 2014-03-29 09:54:33 in ,



定义一个android基类退出app
Activity基类:
[java] view plaincopyprint?
package com.mayi.close_activity_by_broadcast.base;  
  
import android.app.Activity;  
import android.content.BroadcastReceiver;  
import android.content.Context;  
import android.content.Intent;  
import android.content.IntentFilter;  
import android.os.Bundle;  
import android.util.Log;  
  
public class BaseActivity extends Activity {  
    protected static final String TAG = "BaseActivity";  
    BroadcastReceiver mybroad=new BroadcastReceiver() {  
          
        @Override  
        public void onReceive(Context context, Intent intent) {  
            // TODO Auto-generated method stub  
            Log.i(TAG, "退出APP");  
            finish();  
        }  
    };  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        // TODO Auto-generated method stub  
        super.onCreate(savedInstanceState);  
        IntentFilter filter=new IntentFilter();  
        filter.addAction("Exit APP");  
        this.registerReceiver(mybroad, filter);  
    }  
    @Override  
    protected void onDestroy() {  
        // TODO Auto-generated method stub  
        super.onDestroy();  
        this.unregisterReceiver(mybroad);  
    }  
}  


test页面:
[html] view plaincopyprint?
package com.mayi.close_activity_by_broadcast;  
  
import android.content.Intent;  
import android.os.Bundle;  
import android.view.Menu;  
import android.view.View;  
import android.view.View.OnClickListener;  
  
import com.mayi.close_activity_by_broadcast.base.BaseActivity;  
  
public class MainActivity extends BaseActivity implements OnClickListener {  
  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.activity_main);  
        findViewById(R.id.exitapp).setOnClickListener(this);  
        findViewById(R.id.otherActivity).setOnClickListener(this);  
    }  
  
    @Override  
    public boolean onCreateOptionsMenu(Menu menu) {  
        // Inflate the menu; this adds items to the action bar if it is present.  
        getMenuInflater().inflate(R.menu.main, menu);  
        return true;  
    }  
  
    @Override  
    public void onClick(View v) {  
        // TODO Auto-generated method stub  
        switch (v.getId()) {  
        case R.id.exitapp:  
            Intent exit=new Intent();  
            exit.setAction("Exit APP");  
            sendBroadcast(exit);  
            break;  
        case R.id.otherActivity:  
            Intent intent=new Intent(getApplicationContext(), Other.class);  
            startActivity(intent);  
        default:  
            break;  
        }  
    }  
  
}  



写评论

相关文章

上一篇:android基础入门数据存储之File

下一篇:Android 强制横屏或竖屏注意事项及onConfigurationChanged的使用

评论

写评论

* 必填.

分享

栏目

赞助商


热门文章

Tag 云