fragment,和适配器中的finish方法

android中调用activity的finish就会关掉当前的Activity,包含关掉了fragment。
在Android中,Activity有个栈,一个Activity结束掉,会回到上一个Activity,并不是退出应用程序。getActivity().finish()。

Android中,退出应用程序的方式:
1.通过pid
int pid = android.os.Process.myPid(); //获取当前应用程序的PID
android.os.Process.killProcess(pid); //杀死当前进程
这种方法退出应用,是会保留某些后进程,例如:Service,Notifications等。

2.通过ActivityManager
ActivityManager manager = (ActivityManager)context.getSystemService(ACTIVITY_SERVICE); //获取应用程序管理器
manager.killBackgroundProcesses(getPackageName()); //强制结束当前应用程序
这种方式退出应用,会结束本应用程序的一切活动,因为本方法会根据应用程序的包名杀死所有进程包括Activity,Service,Notifications等。
适配器
在一个页面的list中绑定了自定义的适配器,通过点击适配器中所属的某个按钮进行页面跳转  
但是在跳转完后list所属的页面还在activity栈中  即没有finish()掉   
在创建子activity时把它加到一个队列t里去,子activity销毁时从队列里删除。
listview销毁时遍历这个队列,调用每子activity的finish方法。
class MyAdapter extends BaseAdapter{
       Activity act;
       public MyAdapter(Activity activity){
           act=activity;
       }
        
       public View getView(){
           button.setonClick(){
               Intent it=new Intent();
               startActivity(it);
               act.finish();
           }
       }
}  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值