[安卓学习小记]You need to use a Theme.AppCompat theme (or descendant) with this activity.

来源:互联网 发布:sql去重复列名 编辑:程序博客网 时间:2024/06/06 04:15
果然,实践才是真正出能力的方式初学安卓,看了一个星期的书,决定还是从登陆验证这些开始写起
  button_register.setOnClickListener(new View.OnClickListener(){            @Override            public void onClick(View view) {                Log.d("注册监听","进入");                //调用注册--暂不开放                Dialog alertDialog = new AlertDialog.Builder(MainActivity.this)     //getParent()//getApplicationContext()????!!!!!!                        .setTitle("提示!")                        .setMessage("功能暂未开放!!!")                        .setPositiveButton("确定",null)                        .create();                    try{                        alertDialog.show();                    }catch (Exception e){                        Log.d("异常块","失败");                        e.printStackTrace();                  }           }        });  
在这个代码块里面,一直给我报alertDialog.show();这句有问题。然后我加上了一个try-catch块。发现编译器给报了You need to use a Theme.AppCompat theme (or descendant) with this activity. 原因是AlertDialog.Builder()里面的参数应该是一个context(上下文对象)。但是不能通过getParent和getApplicationContext()获取解决的办法是AlertDialog.Builder(MainActivity.this) 里面的参数是Your_Activity.this
1 0