在移植Android的系统中,遇到了飞行模式中在操作一次之后,globalaction(长按power键出来的dialog就是globalaction)中的item变成了灰色,并且不可操作,之后对代码进行了分析,解决了问题,特此记录,以备有需要的朋友。
现象:长按住power键后->弹出globalaction对话框->选择飞行模式->对话框会自动关闭->再次长按住power键后->->弹出globalaction对话框->此时对话框的飞行模式一直都是灰色状态,且不能做任何操作
其实问题的原因在于源码在编译的时候关闭了电话模块或者是电话的状态没有接好之类的问题,下面看代码理解流程吧:
在globalactions中静音和飞行模式都是一个toggleaction,下面先看ToggleAction的create的代码:
willCreate();
View v = (convertView != null) ?
convertView :
inflater.inflate(R
.layout.global_actions_item, parent, false);
ImageView icon = (ImageView) v.findViewById(R.id.icon);
TextView messageView = (TextView) v.findViewById(R.id.message);
TextView statusView = (TextView) v.fin