fragment中AlertDialog崩溃
变强不变秃 2017-09-10 08:39:47 locat:
09-10 20:37:30.156 10010-10010/com.example.administrator.demo01 E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.administrator.demo01, PID: 10010
java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
at android.support.v7.app.AppCompatDelegateImplV9.createSubDecor(AppCompatDelegateImplV9.java:359)
at android.support.v7.app.AppCompatDelegateImplV9.ensureSubDecor(AppCompatDelegateImplV9.java:328)
at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:289)
at android.support.v7.app.AppCompatDialog.setContentView(AppCompatDialog.java:83)
at android.support.v7.app.AlertController.installContent(AlertController.java:225)
at android.support.v7.app.AlertDialog.onCreate(AlertDialog.java:257)
at android.app.Dialog.dispatchOnCreate(Dialog.java:361)
at android.app.Dialog.show(Dialog.java:262)
at com.item.main.RiChenDM$1.onClick(RiChenDM.java:70)
at android.view.View.performClick(View.java:4438)
at android.view.View$PerformClick.run(View.java:18422)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5019)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
at dalvik.system.NativeStart.main(Native Method)
代码部分public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view= inflater.inflate(R.layout.tab01 , container, false);
but1= (Button) view.findViewById(R.id.tab_but1);
mDatabaseHelper = new DatabaseHelper(getActivity());
mCostBeanList = new ArrayList<>();
ListView listView = (ListView) view.findViewById(R.id.lv_main);
initCostData();
adapter = new ListBaseAdapter(view.getContext(), mCostBeanList);
listView.setAdapter(adapter);
but1=(Button) view.findViewById(R.id.tab_but1);
but1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
LayoutInflater inflater = LayoutInflater.from(getActivity());
View viewDialog = inflater.inflate(R.layout.new_cost, null);
final EditText cost_do = (EditText) viewDialog.findViewById(R.id.et_cost_do);
final DatePicker datePicker = (DatePicker) viewDialog.findViewById(R.id.et_cost_time);
builder.setView(viewDialog);
builder.setTitle("创建日程");
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
CostBean costBean=new CostBean();
costBean.costdo=cost_do.getText().toString();
costBean.time=datePicker.getYear()+"--"+(datePicker.getMonth()+1)+"--"+datePicker.getDayOfMonth();
mDatabaseHelper.inserCost(costBean);
mCostBeanList.add(costBean);
adapter.notifyDataSetChanged();
}
});
builder.setNegativeButton("取消",null);
builder.create().show();
}
});