关于对话框Activity

关于对话框Activity

在一个自定义的dialog中如何finish掉作为上下文的Activity

注,有上下文参数Context context

正在回答

登陆购买课程后可参与讨论,去登陆

2回答
public class MyDatePicker extends Dialog {
    private MainActivity mContext;
    public MyDatePicker(@NonNull final Context context) {
        super(context);
        mContext = (MainActivity) context;
        ……
         button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                dismiss();
                mContext.finish();
            }
        });
……
}


  • 凛冬phx 提问者 #1
    真的感谢,原来是转型的问题,一语中的必须点赞
    2017-11-06 18:15:45
  • 凛冬phx 提问者 #2
    另外请教一哈我之前的做法为什么不行就是,直接在下面 (MainActivity)context.finish();
    2017-11-06 18:17:16
  • irista23 回复 提问者 凛冬phx #3
    ((MainActivity)context).finish();试试
    2017-11-06 18:45:08
嘘_别说话 2017-11-05 11:31:26

调用finish()试试,但及时不崩溃也得程序泄露。因为你把它关闭掉,你的对话框还要依存你的上下文,本身就说不能的

  • 提问者 凛冬phx #1
    对话框也dismiss掉了,就是想回退时不会再回到这里。 关键是怎么在dialog里finish掉上下文的activity 不能直接finish()吧
    2017-11-05 12:08:23
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
Android从界面到数据存储2018版
  • 参与学习       504    人
  • 提交作业       1003    份
  • 解答问题       1044    个

本专题是专为有Java语言基础想入坑Android开发的同学们准备的。从AndroidUI基础一直到网络,数据存储,一步到位入门Android开发。如果你会Java,那就不要犹豫了~ ~

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师